2017-08-24 18:28:41 +02:00
|
|
|
#
|
2021-07-04 16:22:22 +02:00
|
|
|
# spec file
|
2017-08-24 18:28:41 +02:00
|
|
|
#
|
2021-01-15 21:35:21 +01:00
|
|
|
# Copyright (c) 2021 SUSE LLC
|
2017-08-24 18:28:41 +02:00
|
|
|
#
|
|
|
|
# All modifications and additions to the file contributed by third parties
|
|
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
|
|
# upon. The license for this file, and modifications and additions to the
|
|
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
|
|
# license for the pristine package is not an Open Source License, in which
|
|
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
|
|
# published by the Open Source Initiative.
|
|
|
|
|
Accepting request 663419 from devel:languages:python:numeric
- Use pytest-astropy since it is in Factory now.
- Update to version 3.1
+ New Features
> astropy.convolution
* ``convolve`` now accepts any array-like input, not just ``numpy.ndarray`` or
lists. [#7303]
* ``convolve`` Now raises AstropyUserWarning if nan_treatment='interpolate' and
preserve_nan=False and NaN values are present post convolution. [#8088]
> astropy.coordinates
* The ``SkyCoord.from_name`` constructor now has the ability to create
coordinate objects by parsing object catalogue names that have embedded
J-coordinates. [#7830]
* The new function ``make_transform_graph_docs`` can be used to create a
docstring graph from a custom ``TransformGraph`` object. [#7135]
* ``KDTree`` for catalog matching is now built with sliding midpoint rule
rather than standard. In code, this means setting ``compact_nodes=False``
and ``balanced_tree=False`` in ``cKDTree``. The sliding midpoint rule is much
more suitable for catalog matching, and results in 1000x speedup in some
cases. [#7324]
* Additional information about a site loaded from the Astropy sites registry is
now available in ``EarthLocation.info.meta``. [#7857]
* Added a ``concatenate_representations`` function to combine coordinate
representation data and any associated differentials. [#7922]
* ``BaseCoordinateFrame`` will now check for a method named
``_astropy_repr_in_frame`` when constructing the string forms of attributes.
Allowing any class to control how ``BaseCoordinateFrame`` represents it when
it is an attribute of a frame. [#7745]
* Some rarely-changed attributes of frame classes are now cached, resulting in
speedups (up to 50% in some cases) when creating new scalar frame or
``SkyCoord`` objects. [#7949, #5952]
* Added a ``directional_offset_by`` method to ``SkyCoord`` that computes a new
coordinate given a coordinate, position angle, and angular separation [#5727]
> astropy.cosmology
* The default cosmology has been changed from ``WMAP9`` to ``Planck15``. [#8123]
* Distance calculations with ``LambaCDM`` with no radiation (T_CMB0=0)
are now 20x faster by using elliptic integrals for non-flat cases. [#7155]
* Distance calculations with ``FlatLambaCDM`` with no radiation (T_CMB0=0)
are now 20x faster by using the hypergeometric function solution
for this special case. [#7087]
* Age calculations with ``FlatLambdaCDM`` with no radiation (Tcmb0=0)
are now 1000x faster by using analytic solutions instead of integrating.
[#7117]
> astropy.io.ascii
* Latex reader now ignores ``\toprule``, ``\midrule``, and ``\bottomrule``
commands. [#7349]
* Added the RST (Restructured-text) table format and the fast version of the
RDB reader to the set of formats that are guessed by default. [#5578]
* The read trace (used primarily for debugging) now includes guess argument
sets that were skipped entirely e.g. for not supporting user-supplied kwargs.
All guesses thus removed from ``filtered_guess_kwargs`` are now listed as
"Disabled" at the beginning of the trace. [#5578]
* Emit a warning when reading an ECSV file without specifying the ``format``
and without PyYAML installed. Previously this silently fell through to
parsing as a basic format file and the file metadata was lost. [#7580]
* Optionally allow writing masked columns to ECSV with the mask explicitly
specified as a separate column instead of marking masked elements with ""
(empty string). This allows handling the case of a masked string column
with "" data rows. [#7481]
> astropy.io.misc
* Added support for saving all representation classes and many coordinate
frames to the asdf format. [#7079]
* Added support for saving models with units to the asdf format. [#7237]
* Added a new ``character_as_bytes`` keyword to the HDF5 Table reading
function to control whether byte string columns in the HDF5 file
are left as bytes or converted to unicode. The default is to read
as bytes (``character_as_bytes=True``). [#7024, #8017]
> astropy.io.fits
* ``HDUList.pop()`` now accepts string and tuple extension name
specifications. [#7236]
* Add an ``ignore_hdus`` keyword to ``FITSDiff`` to allow ignoring HDUs by
NAME when diffing two FITS files [#7538]
* Optionally allow writing masked columns to FITS with the mask explicitly
specified as a separate column instead of using the FITS standard of
certain embedded null values (``NaN`` for float, ``TNULL`` for integers).
This can be used to work around limitations in the FITS standard. [#7481]
* All time coordinates can now be written to and read from FITS binary tables,
including those with vectorized locations. [#7430]
* The ``fitsheader`` command line tool now supports a ``dfits+fitsort`` mode,
and the dotted notation for keywords (e.g. ``ESO.INS.ID``). [#7240]
* Fall back to reading arrays using mode='denywrite' if mode='readonly' fails
when using memory-mapping. This solves cases on some platforms when the
available address space was less than the file size (even when using memory
mapping). [#7926]
> astropy.modeling
* Add a ``Multiply`` model which preserves unit through evaluate, unlike
``Scale`` which is dimensionless. [#7210]
* Add a ``uses_quantity`` property to ``Model`` which allows introspection of if
the ``Model`` can accept ``Quantity`` objects. [#7417]
* Add a ``separability_matrix`` function which returns the correlation matrix
of inputs and outputs. [#7803]
* Fixed compatibility of ``JointFitter`` with the latest version of Numpy. [#7984]
* Add ``prior`` and ``posterior`` constraints to modeling parameters. These are
not used by any current fitters, but are provided to allow user code to
experiment with Bayesian fitters. [#7558]
> astropy.nddata
* ``NDUncertainty`` objects now have a ``quantity`` attribute for simple
conversion to quantities. [#7704]
* Add a ``bitmask`` module that provides functions for manipulating bitmasks
and data quality (DQ) arrays. [#7944]
> astropy.stats
* Add an ``astropy.stats.bls`` module with an implementation of the "box least
squares" periodogram that is commonly used for discovering transiting
exoplanets and eclipsing binaries. [#7391]
> astropy.table
* Added support for full use of ``Time`` mixin column for join, hstack, and
vstack table operations. [#6888]
* Added a new table index engine, ``SCEngine``, based on the Sorted Containers
package. [#7574]
* Add a new keyword argument ``serialize_method`` to ``Table.write`` to
control how ``Time`` and ``MaskedColumn`` columns are written. [#7481]
* Allow mixin columns to be used in table ``group`` and ``unique``
functions. This applies to both the key columns and the other data
columns. [#7712]
* Added support for stacking ``Column``, mixin column (e.g. ``Quantity``,
``Time``) or column-like objects. [#7674]
* Added support for inserting a row into a Table that has ``Time`` or
``TimeDelta`` column(s). [#7897]
> astropy.tests
* Added an option ``--readonly`` to the test command to change the
permissions on the temporary installation location to read-only. [#7598]
> astropy.time
* Allow array-valued ``Time`` object to be modified in place. [#6028]
* Added support for missing values (masking) to the ``Time`` class. [#6028]
* Added supper for a 'local' time scale (for free-running clocks, etc.),
and round-tripping to the corresponding FITS time scale. [#7122]
* Added `datetime.timedelta` format class for ``TimeDelta``. [#7441]
* Added ``strftime`` and ``strptime`` methods to ``Time`` class.
These methods are similar to those in the Python standard library
`time` package and provide flexible input and output formatting. [#7323]
* Added ``datetime64`` format to the ``Time`` class to support working with
``numpy.datetime64`` dtype arrays. [#7361]
* Add fractional second support for ``strftime`` and ``strptime`` methods
of ``Time`` class. [#7705]
* Added an ``insert`` method to allow inserting one or more values into a
``Time`` or ``TimeDelta`` object. [#7897]
* Remove timescale from string version of FITS format time string.
The timescale is not part of the FITS standard and should not be included.
This change may cause some compatibility issues for code that relies on
round-tripping a FITS format string with a timescale. Strings generated
from previous versions of this package are still understood but a
DeprecationWarning will be issued. [#7870]
> astropy.uncertainty
* This sub-package was added as a "preview" (i.e. API unstable), containing
the ``Distribution`` class and associated convenience functions. [#6945]
> astropy.units
* Add complex numbers support for ``Quantity._repr_latex_``. [#7676]
* Add ``thermodynamic_temperature`` equivalency to convert between
Jy/beam and "thermodynamic temperature" for cosmology. [#7054]
* Add millibar unit. [#7863]
* Add maggy and nanomaggy unit, as well as associated ``zero_point_flux``
equivalency. [#7891]
* ``AB`` and ``ST`` are now enabled by default, and have alternate names
``ABflux`` and ``STflux``. [#7891]
* Added ``littleh`` unit and associated ``with_H0`` equivalency. [#7970]
> astropy.visualization
* Added ``imshow_norm`` function, which combines imshow and creation of a
``ImageNormalize`` object. [#7785]
> astropy.visualization.wcsaxes
* Add support for setting ``set_separator(None)`` in WCSAxes to use default
separators. [#7570]
* Added two keyword argument options to ``CoordinateHelper.set_format_unit``:
``decimal`` can be used to specify whether to use decimal formatting for the
labels (by default this is False for degrees and hours and True otherwise),
and ``show_decimal_unit`` can be used to determine whether the units should be
shown for decimal labels. [#7318]
* Added documentation for ``transform=`` and ``coord_meta=``. [#7698]
* Allow ``coord_meta=`` to optionally include ``format_unit=``. [#7848]
* Add support for more rcParams related to the grid, ticks, and labels, and
should work with most built-in Matplotlib styles. [#7961]
* Improved rendering of outward-facing ticks. [#7961]
* Add support for ``tick_params`` (which is a standard Matplotlib
function/method) on both the ``WCSAxes`` class and the individual
``CoordinateHelper`` classes. Note that this is provided for compatibility
with Matplotlib syntax users may be familiar with, but it is not the
preferred way to change settings. Instead, methods such as ``set_ticks``
should be preferred. [#7969]
* Moved the argument ``exclude_overlapping`` from ``set_ticks`` to
``set_ticklabel``. [#7969]
* Added a ``pad=`` argument to ``set_ticklabel`` to provide a way to control
the padding between ticks and tick labels. [#7969]
* Added support for setting the tick direction in ``set_ticks`` using the
``direction=`` keyword argument. [#7969]
> astropy.wcs
* Map ITRS frames to terrestrial WCS coordinates. This will make it possible to
use WCSAxes to make figures that combine both celestial and terrestrial
features. An example is plotting the coordinates of an astronomical transient
over an all- sky satellite image to illustrate the position relative to the
Earth at the time of the event. The ITRS frame is identified with WCSs that
use the ``TLON-`` and ``TLAT-`` coordinate types. There are several examples
of WCSs where this syntax is used to describe terrestrial coordinate systems:
Section 7.4.1 of `WCS in FITS "Paper II" <http://adsabs.harvard.edu/abs/2002A%26A...395.1077C>`_
and the `WCSTools documentation <http://tdc-www.harvard.edu/software/wcstools/wcstools.multiwcs.html>`_.
[#6990]
* Added the abstract base class for the low-level WCS API described in APE 14
(https://doi.org/10.5281/zenodo.1188875). [#7325]
* Add ``WCS.contains()`` function to check if the WCS footprint contains a given sky coordinate. [#7273]
* Added the abstract base class for the high-level WCS API described in APE 14
(https://doi.org/10.5281/zenodo.1188875). [#7325]
* Added the high-level wrapper class for low-level WCS objects as described in
APE 14 (https://doi.org/10.5281/zenodo.1188875). [#7326]
* Added a new property ``WCS.has_distortion``. [#7326]
* Deprecated ``_naxis1`` and ``_naxis2`` in favor of ``pixel_shape``. [#7973]
* Added compatibility to wcslib version 6. [#8093]
+ API Changes
> astropy.convolution
* ``kernel`` can now be a tuple. [#7561]
* Not technically an API changes, however, the docstring indicated that ``boundary=None``
was the default when actually it is ``boundary='fill'``. The docstring has been corrected,
however, someone may interpret this as an API change not realizing that nothing has actually
changed. [#7293]
* ``interpolate_replace_nans()`` can no longer accept the keyword argument
``preserve_nan``. It is explicitly set to ``False``. [#8088]
> astropy.coordinates
* Fixed ``astropy.coordinates.concatenate`` to include velocity data in the
concatenation. [#7922]
* Changed the name of the single argument to ``Frame.realize_frame()`` from the
(incorrect) ``representation_type`` to ``data``. [#7923]
* Negative parallaxes passed to ``Distance()`` now raise an error by default
(``allow_negative=False``), or are converted to NaN values with a warning
(``allow_negative=True``). [#7988]
* Negating a ``SphericalRepresentation`` object now changes the angular
coordinates (by rotating 180º) instead of negating the distance. [#7988]
* Creation of new frames now generally creates copies of frame attributes,
rather than inconsistently either copying or making references. [#8204]
* The frame class method ``is_equivalent_frame`` now checks for equality of
components to determine if a frame is the same when it has frame attributes
that are representations, rather than checking if they are the same
object. [#8218]
> astropy.io.ascii
* If a fast reader is explicitly selected (e.g. ``fast_reader='force'``) and
options which are incompatible with the fast reader are provided
(e.g. ``quotechar='##'``) then now a ``ParameterError`` exception will be
raised. [#5578]
* The fast readers will now raise ``InconsistentTableError`` instead of
``CParserError`` if the number of data and header columns do not match.
[#5578]
* Changed a number of ``ValueError`` exceptions to ``InconsistentTableError``
in places where the exception is related to parsing a table which is
inconsistent with the specified table format. Note that
``InconsistentTableError`` inherits from ``ValueError`` so no user code
changes are required. [#7425]
> astropy.io.fits
* The ``fits.table_to_hdu()`` function will translate any column ``format``
attributes to a TDISPn format string, if possible, and store it as a TDISPn
keyword in the ``HDU`` header. [#7226]
> astropy.modeling
* Change the order of the return values from ``FittingWithOutlierRemoval``,
such that ``fitted_model`` comes first, for consistency with other fitters.
For the second value, return only a boolean outlier ``mask``, instead of the
previous ``MaskedArray`` (which included a copy of the input data that was
both redundant and inadvertently corrupted at masked points). Return a
consistent type for the second value when ``niter=0``. [#7407]
* Set the minimum value for the ``bolometric_flux`` parameter of the
``BlackBody1D`` model to zero. [#7045]
> astropy.nddata
* Add two new uncertainty classes, ``astropy.nddata.VarianceUncertainty`` and
``astropy.nddata.InverseVariance``. [#6971]
> astropy.stats
* String values can now be used for the ``cenfunc`` and ``stdfunc``
keywords in the ``SigmaClip`` class and ``sigma_clip`` and
``sigma_clipped_stats`` functions. [#7478]
* The ``SigmaClip`` class and ``sigma_clip`` and
``sigma_clipped_stats`` functions now have a ``masked`` keyword,
which can be used to return either a masked array (default) or an
ndarray with the min/max values. [#7478]
* The ``iters`` keyword has been renamed (and deprecated) to
``maxiters`` in the ``SigmaClip`` class and ``sigma_clip`` and
``sigma_clipped_stats`` functions. [#7478]
> astropy.table
* ``Table.read()`` on a FITS binary table file will convert any TDISPn header
keywords to a Python formatting string when possible, and store it in the
column ``format`` attribute. [#7226]
* No values provided to stack will now raise ``ValueError`` rather than
``TypeError``. [#7674]
> astropy.tests
* ``from astropy.tests.helper import *`` no longer includes
``quantity_allclose``. However,
``from astropy.tests.helper import quantity_allclose`` would still work.
[#7381]
* ``warnings_to_ignore_by_pyver`` option in
``enable_deprecations_as_exceptions()`` now takes ``None`` as key.
Any deprecation message that is mapped to ``None`` will be ignored
regardless of the Python version. [#7790]
> astropy.time
* Added the ability to use ``local`` as time scale in ``Time`` and
``TimeDelta``. [#6487]
* Comparisons, addition, and subtraction of ``Time`` instances with non-time
instances will now return ``NotImplemented`` rather than raise the
``Time``-specific ``OperandTypeError``. This will generally lead to a
regular ``TypeError``. As a result, ``OperandTypeError`` now only occurs if
the operation is between ``Time`` instances of incompatible type or scale.
[#7584]
> astropy.units
* In ``UnitBase.compose()``, if a sequence (list|tuple) is passed in to
``units``, the default for ``include_prefix_units`` is set to
`True`, so that no units get ignored. [#6957]
* Negative parallaxes are now converted to NaN values when using the
``parallax`` equivalency. [#7988]
> astropy.utils
* ``InheritDocstrings`` now also works on class properties. [#7166]
* ``diff_values()``, ``report_diff_values()``, and ``where_not_allclose()``
utility functions are moved from ``astropy.io.fits.diff``. [#7444]
* ``invalidate_caches()`` has been removed from the
``astropy.utils.compat`` namespace, use it directly from ``importlib``. [#7872]
> astropy.visualization
* In ``ImageNormalize``, the default for ``clip`` is set to ``True``. [#7800]
* Changed ``AsymmetricPercentileInterval`` and ``MinMaxInterval`` to
ignore NaN values in arrays. [#7360]
* Automatically default to using ``grid_type='contours'`` in WCSAxes when using
a custom ``Transform`` object if the transform has no inverse. [#7847]
+ Performance Improvements
* Reduced import time by more cautious use of the standard library. [#7647]
> astropy.convolution
* Major performance overhaul to ``convolve()``. [#7293]
* ``convolve()``: Boundaries ``fill``, ``extend``, and ``wrap`` now use a single
implementation that pads the image with the correct boundary values before convolving.
The runtimes of these three were significantly skewed. They now have
equivalent runtimes that are also faster than before due to performant contiguous
memory access. However, this does increase the memory footprint as an entire
new image array is required plus that needed for the padded region.[#7293]
* ``convolve()``: Core computation ported from Cython to C. Several optimization
techniques have been implemented to achieve performance gains, e.g. compiler
hoisting, and vectorization, etc. Compiler optimization level ``-O2`` required for
hoisting and ``-O3`` for vectorization. [#7293]
* ``convolve()``: ``nan_treatment=‘interpolate’`` was slow to compute irrespective of
whether any NaN values exist within the array. The input array is now
checked for NaN values and interpolation is disabled if non are found. This is a
significant performance boost for arrays without NaN values. [#7293]
> astropy.coordinates
* Sped up creating SkyCoord objects by a factor of ~2 in some cases. [#7615]
* Sped up getting xyz vectors from ``CartesianRepresentation`` (which
is used a lot internally). [#7638]
* Sped up transformations and some representation methods by replacing
python code with (compiled) ``erfa`` ufuncs. [#7639]
* Sped up adding differential (velocity) data to representations by a factor of
~20, which improves the speed of frame and SkyCoord initialization. [#7924]
* Refactored ``SkyCoord`` initializer to improve performance and code clarity.
[#7958]
* Sped up initialization of ``Longitude`` by ~40%. [#7616]
> astropy.stats
* The ``SigmaClip`` class and ``sigma_clip`` and
``sigma_clipped_stats`` functions are now significantly faster. [#7478]
* A Cython implementation for `astropy.stats.kuiper_two` and a vectorized
implementation for `astropy.stats.kuiper_false_positive_probability` have
been added, speeding up both functions. [#8104]
> astropy.units
* Sped up creating new composite units, and raising units to some power
[#7549, #7649]
* Sped up Unit.to when target unit is the same as the original unit.
[#7643]
* Lazy-load ``scipy.special`` to shorten ``astropy.units`` import time. [#7636]
> astropy.visualization
* Significantly sped up drawing of contours in WCSAxes. [#7568]
+ Bug Fixes
> astropy.convolution
* Fixed bug in ``convolve_fft`` where masked input was copied with
``numpy.asarray`` instead of ``numpy.asanyarray``.
``numpy.asarray`` removes the mask subclass causing
``numpy.ma.ismasked(input)`` to fail, causing ``convolve_fft``
to ignore all masked input. [#8137]
* Remove function side-effects of input data from ``convolve_fft``.
It was possible for input data to remain modified if particular exceptions
were raised. [#8152]
> astropy.coordinates
* ``EarthLocation.of_address`` now uses the OpenStreetMap geocoding API by
default to retrieve coordinates, with the Google API (which now requires an
API key) as an option. [#7918]
* Fixed a bug that caused frame objects with NaN distances to have NaN sky
positions, even if valid sky coordinates were specified. [#7988]
* Fixed ``represent_as()`` to not round-trip through cartesian if the same
representation class as the instance is passed in. [#7988]
> astropy.io.ascii
* Fixed a problem when ``guess=True`` that ``fast_reader`` options
could be dropped after the first fast reader class was tried. [#5578]
* Units in CDS-formatted tables are now parsed correctly by the units
module. [#7348]
> astropy.io.misc
* Fixed bug when writing a table with masked columns to HDF5. Previously
the mask was being silently dropped. If the ``serialize_meta`` option is
enabled the data mask will now be written as an additional column and the
masked columns will round-trip correctly. [#7481]
* Fixed a bug where writing to HDF5 failed for for tables with columns of
unicode strings. Now those columns are first encoded to UTF-8 and
written as byte strings. [#7024, #8017]
* Fixed a bug with serializing the bounding_box of models initialized
with ``Quantities`` . [#8052]
> astropy.io.fits
* Added support for ``copy.copy`` and ``copy.deepcopy`` for ``HDUList``. [#7218]
* Override ``HDUList.copy()`` to return a shallow HDUList instance. [#7218]
> astropy.modeling
* Fix behaviour of certain models with units, by making certain unit-related
attributes readonly. [#7210]
* Fixed an issue with validating a ``bounding_box`` whose items are
``Quantities``. [#8052]
* Fix ``Moffat1D`` and ``Moffat2D`` derivatives. [#8108]
> astropy.nddata
* Fixed rounding behavior in ``overlap_slices`` for even-sized small
arrays. [#7859]
* Added support for pickling ``NDData`` instances that have an uncertainty.
[#7383]
> astropy.stats
* Fix errors in ``kuiper_false_positive_probability``. [#7975]
> astropy.tests
* Fixing bug that prevented to run the doctests on only a single rst documentation
file rather than all of them. [#8055]
> astropy.time
* Fix a bug when setting a ``TimeDelta`` array item with plain float value(s).
This was always interpreted as a JD (day) value regardless of the
``TimeDelta`` format. [#7990]
> astropy.units
* To simplify fast creation of ``Quantity`` instances from arrays, one can now
write ``array << unit`` (equivalent to ``Quantity(array, unit, copy=False)``).
If ``array`` is already a ``Quantity``, this will convert the quantity to the
requested units; in-place conversion can be done with ``quantity <<= unit``.
[#7734]
> astropy.utils
* Fixed a bug due to which ``report_diff_values()`` was reporting incorrect
number of differences when comparing two ``numpy.ndarray``. [#7470]
* The download progress bar is now only displayed in terminals, to avoid
polluting piped output. [#7577]
* Ignore URL mirror caching when there is no internet. [#8163]
> astropy.visualization
* Right ascension coordinates are now shown in hours by default, and the
``set_format_unit`` method on ``CoordinateHelper`` now works correctly
with angle coordinates. [#7215]
+ Other Changes and Additions
* The documentation build now uses the Sphinx configuration from sphinx-astropy
rather than from astropy-helpers. [#7139]
* Versions of Numpy <1.13 are no longer supported. [#7058]
* Running tests now suppresses the output of the installation stage by default,
to allow easier viewing of the test results. To re-enable the output as
before, use ``python setup.py test --verbose-install``. [#7512]
* The ERFA functions are now wrapped in ufuncs instead of custom C code,
leading to some speed improvements, and setting the stage for allowing
overrides with ``__array_ufunc__``. [#7502]
* Updated the bundled CFITSIO library to 3.450. See
``cextern/cfitsio/docs/changes.txt`` for additional information. [#8014]
* The ``representation`` keywords in coordinate frames are now deprecated in
favor of the ``representation_type`` keywords (which are less
ambiguously named). [#8119]
- Update to 3.0.5
* Update to 3.* is a large step, which contains these main
improvements:
- Full support for velocities in astropy.coordinates
- Support for position updates based on source motion for
SkyCoord objects
- Context managers for versioned constants
- Support for quantities in scipy special functions
- showtable command line script
- Lossless writing and reading mixin columns to HDF5 and
FITS
- Support for FITS time standard
- FITS table performance enhancements
- False alarm probabilities in astropy.stats.LombScargle
- Reading large ASCII files in chunks
- Astropy now only supports Python 3
- pytest plugins moved to external packages
Full changelog is available at http://docs.astropy.org/en/stable/changelog.html
OBS-URL: https://build.opensuse.org/request/show/663419
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-astropy?expand=0&rev=4
2019-01-21 10:47:14 +01:00
|
|
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
2017-08-24 18:28:41 +02:00
|
|
|
#
|
|
|
|
|
|
|
|
|
2020-06-03 09:43:14 +02:00
|
|
|
%global flavor @BUILD_FLAVOR@%{nil}
|
|
|
|
%if "%{flavor}" == "test"
|
|
|
|
%bcond_without test
|
2020-12-10 00:08:56 +01:00
|
|
|
%define psuffix -test
|
2020-06-03 09:43:14 +02:00
|
|
|
%else
|
|
|
|
%bcond_with test
|
2020-12-10 00:08:56 +01:00
|
|
|
%define psuffix %{nil}
|
2020-06-03 09:43:14 +02:00
|
|
|
%endif
|
2020-10-23 13:32:38 +02:00
|
|
|
|
2020-05-28 09:33:22 +02:00
|
|
|
%define binaries fitsdiff fitsheader fitscheck fitsinfo fits2bitmap samp_hub showtable volint wcslint
|
2020-10-23 13:32:38 +02:00
|
|
|
|
2021-08-05 21:04:41 +02:00
|
|
|
# backwards compatibility for --without systemlibs
|
|
|
|
%bcond_without systemlibs
|
|
|
|
|
|
|
|
%if 0%{suse_version} <= 1500 || ! %{with systemlibs}
|
2021-01-15 21:35:21 +01:00
|
|
|
# Use the bundled libraries for Leap 15.X, because the versions in the repos are too old
|
2021-08-05 21:04:41 +02:00
|
|
|
%bcond_with system_cfitsio
|
|
|
|
%bcond_with system_expat
|
|
|
|
%bcond_with system_wcslib
|
2021-01-15 21:35:21 +01:00
|
|
|
%else
|
2021-08-05 21:04:41 +02:00
|
|
|
%bcond_without system_cfitsio
|
|
|
|
%bcond_without system_expat
|
|
|
|
%bcond_without system_wcslib
|
|
|
|
%endif
|
|
|
|
|
|
|
|
%if %{with system_cfitsio}
|
|
|
|
%define unbundle_cfitsio export ASTROPY_USE_SYSTEM_CFITSIO=1
|
|
|
|
%endif
|
|
|
|
%if %{with system_expat}
|
|
|
|
%define unbundle_expat export ASTROPY_USE_SYSTEM_EXPAT=1
|
2021-01-15 21:35:21 +01:00
|
|
|
%endif
|
2021-08-05 21:04:41 +02:00
|
|
|
%if %{with system_wcslib}
|
|
|
|
%define unbundle_wcs export ASTROPY_USE_SYSTEM_WCSLIB=1
|
2020-10-23 13:32:38 +02:00
|
|
|
%endif
|
2021-08-05 21:04:41 +02:00
|
|
|
%define unbundle_libs %{?unbundle_cfitsio} \
|
|
|
|
%{?unbundle_expat} \
|
2021-08-06 02:33:56 +02:00
|
|
|
%{?unbundle_wcs}
|
2020-10-23 13:32:38 +02:00
|
|
|
|
|
|
|
%{?!python_module:%define python_module() python3-%{**}}
|
Accepting request 717717 from home:TheBlackCat:branches:devel:languages:python:numeric
- Update to 3.2.1
+ Bug fixes
* astropy.io.fits
> Avoid reporting a warning with ``BinTableHDU.from_columns`` with keywords that
are not provided by the user.
> Fix ``Header.fromfile`` to work on FITS files.
> Fix reading of empty ``BinTableHDU`` when stored in a gzip-compressed file.
* astropy.table
> Fix a problem where mask was dropped when creating a ``MaskedColumn``
from a list of ``MaskedArray`` objects.
* astropy.wcs
> Added ``None`` to be displayed as a ``world_axis_physical_types`` in
the ``WCS`` repr, as ``None`` values are now supported in ``APE14``.
- Update to 3.2
+ New Features
* astropy.constants
> Add CODATA 2018 constants but not make them default because the
redefinition of SI units that will follow has not been implemented
yet.
* astropy.coordinates
> New ``BarycentricMeanEcliptic``, ``HeliocentricTrueEcliptic`` and
``GeocentricTrueEcliptic`` frames.
The ecliptic frames are no longer considered experimental.
> The default time scale for epochs like 'J2000' or 'B1975' is now "tt",
which is the correct one for 'J2000' and avoids leap-second warnings
for epochs in the far future or past.
* astropy.extern
> Bundled ``six`` now emits ``AstropyDeprecationWarning``. It will be removed
in 4.0.
* astropy.io.ascii
> IPAC tables now output data types of ``float`` instead of ``double``, or
``int`` instead of ``long``, based on the column ``dtype.itemsize``.
> Update handling of MaskedColumn columns when using the 'data_mask' serialization
method. This can make writing ECSV significantly faster if the data do not
actually have any masked values.
> Fixed a bug that caused newlines to be incorrect when writing out ASCII tables
on Windows (they were ``\r\r\n`` instead of ``\r\n``).
* astropy.io.misc
> Implement serialization of ``TimeDelta`` in ASDF.
> Implement serialization of ``EarthLocation`` in ASDF.
> Implement serialization of ``SkyCoord`` in ASDF.
> Support serialization of Astropy tables with mixin columns in ASDF.
> No warnings when reading HDF5 files with only one table and no ``path=``
argument
> The HDF5 writer will now create a default table instead of raising an
exception when ``path=`` is not specified and when writing to empty/new HDF5
files.
* astropy.io.fits
> Optimize parsing of cards within the ``Header`` class.
> Optimize the parsing of headers to get the structural keywords that are
needed to find extensions. Thanks to this, getting a random HDU from a file
with many extensions is much faster than before, in particular when the
extension headers contain many keywords.
> Change behavior of FITS undefined value in ``Header`` such that ``None``
is used in Python to represent FITS undefined when using dict interface.
``Undefined`` can also be assigned and is translated to ``None``.
Previously setting a header card value to ``None`` resulted in an
empty string field rather than a FITS undefined value.
> Allow ``Header.fromstring`` and ``Card.fromstring`` to accept ``bytes``.
* astropy.io.registry
> Implement ``Table`` reader and writer for ``ASDF``.
> Implement ``Table`` reader and writer methods to wrap ``pandas`` I/O methods
for CSV, Fixed width format, HTML, and JSON.
> Add ``help()`` and ``list_formats()`` methods to unified I/O ``read`` and
``write`` methods. For example ``Table.read.help()`` gives help on available
``Table`` read formats and ``Table.read.help('fits')`` gives detailed
help on the arguments for reading FITS table file.
* astropy.table
> Initializing a table with ``Table(rows=...)``, if the first item is an ``OrderedDict``,
now uses the column order of the first row.
> Added new pprint_all() and pformat_all() methods to Table. These two new
methods print the entire table by default.
> Removed restriction of initializing a Table from a dict with copy=False.
> Improved speed of table row access by a factor of about 2-3. Improved speed
of Table len() by a factor of around 3-10 (depending on the number of columns).
> Improved the Table - pandas ``DataFrame`` interface (``to_pandas()`` and
``from_pandas()``). Mixin columns like ``Time`` and ``Quantity`` can now be
converted to pandas by flattening the columns as necessary to plain
columns. ``Time`` and ``TimeDelta`` columns get converted to
corresponding pandas date or time delta types. The ``DataFrame``
index is now handled in the conversion methods.
> Added ``rename_columns`` method to rename multiple columns in one call.
> Improved Table performance by reducing unnecessary calls to copy and deepcopy,
especially as related to the table and column ``meta`` attributes. Changed the
behavior when slicing a table (either in rows or with a list of column names)
so now the sliced output gets a light (key-only) copy of ``meta`` instead of a
deepcopy. Changed the ``Table.meta`` class-level descriptor so that assigning
directly to ``meta``, e.g. ``tbl.meta = new_meta`` no longer does a deepcopy
and instead just directly assigns the ``new_meta`` object reference. Changed
Table initialization so that input ``meta`` is copied only if ``copy=True``.
> Improved Table slicing performance with internal implementation changes
related to column attribute access and certain input validation.
> Added ``reverse`` argument to the ``sort`` and ``argsort`` methods to allow
sorting in reverse order.
> Improved ``Table.sort()`` performance by removing ``self[keys]`` from code
which is creating deep copies of ``meta`` attribute and adding a new keyword
``names`` in ``get_index()`` to get index by using a list or tuple containing
names of columns.
> Expose ``represent_mixins_as_columns`` as a public function in the
``astropy.table`` subpackage. This previously-private function in the
``table.serialize`` module is used to represent mixin columns in a Table as
one or more plain Column objects.
* astropy.timeseries
> Added a new astropy.timeseries sub-package to represent and manipulate
sampled and binned time series.
> The ``BoxLeastSquares`` and ``LombScargle`` classes have been moved to
``astropy.timeseries.periodograms`` from ``astropy.stats``.
> Added the ability to provide absolute ``Time`` objects to the
``BoxLeastSquares`` and ``LombScargle`` periodogram classes.
> Added model inspection methods (``model_parameters()``, ``design_matrix()``,
and ``offset()``) to ``astropy.timeseries.LombScargle`` class .
* astropy.units
> ``Quantity`` overrides of ``ndarray`` methods such as ``sum``, ``min``,
``max``, which are implemented via reductions, have been removed since they
are dealt with in ``Quantity.__array_ufunc__``. This should not affect
subclasses, but they may consider doing similarly. Note that this
does not include methods that use more complicated python code such as
``mean``, ``std`` and ``var``.
* astropy.visualization
> Added ``CompositeStretch``, which inherits from ``CompositeTransform`` and
also ``BaseStretch`` so that it can be used with ``ImageNormalize``.
> Added a ``log_a`` argument to the ``simple_norm`` method. Similar to the
exposing of the ``asinh_a`` argument for ``AsinhStretch``, the new
``log_a`` argument is now exposed for ``LogStretch``.
* astropy.wcs
> WCSLIB was updated to v 6.2.
This adds support for time-related WCS keywords (WCS Paper VII).
FITS headers containing ``Time`` axis are parsed and the axis is included in
the WCS object.
> The ``OBSGEO`` attribute as expanded to 6 members - ``XYZLBH``.
> Added a new class ``SlicedLowLevelWCS`` in ``astropy.wcs.wcsapi`` that can be
used to slice any WCS that conforms to the ``BaseLowLevelWCS`` API.
> Updated implementation of ``WCS.__getitem__`` and ``WCS.slice`` to now return
a ``SlicedLowLevelWCS`` rather than raising an error when reducing the
dimensionality of the WCS.
+ API Changes
* astropy.coordinates
> ``QuantityAttribute`` no longer has a default value for ``default``. The
previous value of None was misleading as it always was an error.
> The default J2000 has been changed to use be January 1, 2000 12:00 TT instead
of UTC. This is more in line with convention.
* astropy.io.ascii
> IPAC tables now output data types of ``float`` instead of ``double``, or
``int`` instead of ``long``, based on the column ``dtype.itemsize``.
* astropy.io.misc
> Unit equivalencies can now be serialized to ASDF.
* astropy.modeling
> Composition of model classes is deprecated and will be removed in 4.0.
Composition of model instances remain unaffected.
* astropy.stats
> The ``BoxLeastSquares`` and ``LombScargle`` classes have been moved to the
``astropy.timeseries.periodograms`` module and will now emit a deprecation
warning when imported from ``astropy.stats``.
* astropy.table
> Converting an empty table to an array using ``as_array`` method now returns
an empty array instead of ``None``.
> Changed the behavior when slicing a table (either in rows or with a list of column
names) so now the sliced output gets a light (key-only) copy of ``meta`` instead of
a deepcopy. Changed the ``Table.meta`` class-level descriptor so that assigning
directly to ``meta``, e.g. ``tbl.meta = new_meta`` no longer does a deepcopy
and instead just directly assigns the ``new_meta`` object reference. Changed
Table initialization so that input ``meta`` is copied only if ``copy=True``.
> Added a keyword ``names`` in ``Table.as_array()``. If provided this specifies
a list of column names to include for the returned structured array.
* astropy.tests
> Removed ``pytest_plugins`` as they are completely broken for ``pytest>=4``.
> Removed the ``astropy.tests.plugins.config`` plugin and removed the
``--astropy-config-dir`` and ``--astropy-cache-dir`` options from
testing. Please use caching functionality that is natively in ``pytest``.
* astropy.time
> The default time scale for epochs like 'J2000' or 'B1975' is now "tt",
which is the correct one for 'J2000' and avoids leap-second warnings
for epochs in the far future or past.
* astropy.units
> Unit equivalencies can now be introspected.
* astropy.wcs
> The ``world_to_pixel``, ``world_to_array_index*``, ``pixel_to_world*`` and
``array_index_to_world*`` methods now all consistently return scalars, arrays,
or objects not wrapped in a one-element tuple/list when only one scalar,
array, or object (as was previously already the case for ``WCS.pixel_to_world``
and ``WCS.array_index_to_world``).
* astropy.utils
> It is now possible to control the number of cores used by ``ProgressBar.map``
by passing a positive integer as the ``multiprocess`` keyword argument. Use
``True`` to use all cores.
+ Bug Fixes
* astropy.coordinates
> ``BarycentricTrueEcliptic``, ``HeliocentricTrueEcliptic`` and
``GeocentricTrueEcliptic`` now use the correct transformation
(including nutation), whereas the new ``*MeanEcliptic`` classes
use the nutation-free transformation.
> Representations with ``float32`` coordinates can now be transformed,
although the output will always be ``float64``.
> Fixed bug that prevented using differentials with HCRS<->ICRS
transformations.
* astropy.io.ascii
> Fixed a bug where an exception was raised when writing a table which includes
mixin columns (e.g. a Quantity column) and the output format was specified
using the ``formats`` keyword.
* astropy.io.misc
> Fixed bug in ASDF tag that inadvertently introduced dependency on ``pytest``.
* astropy.modeling
> Fixed slowness for certain compound models consisting of large numbers
of multi-input models
> Fixed bugs in fitting of compound models with units.
* astropy.nddata
> Fixed bug in reading multi-extension FITS files written by earlier versions
of ``CCDData``.
> Fixed two errors in the way ``CCDData`` handles FITS files with WCS in the
header. Some of the WCS keywords that should have been removed from the
header were not, potentially leading to FITS files with inconsistent
WCS.
* astropy.table
> Fixed a bug when initializing from an empty list: ``Table([])`` no longer
results in a crash.
> Fixed a bug when initializing from an existing ``Table``. In this case the
input ``meta`` argument was being ignored. Now the input ``meta``, if
supplied, will be used as the ``meta`` for the new ``Table``.
> Fix the conversion of bytes values to Python ``str`` with ``Table.tolist``.
* astropy.time
> Fixed a number of issues to ensure a consistent output type resulting from
multiplication or division involving a ``TimeDelta`` instance. The output is
now always a ``TimeDelta`` if the result is a time unit (like u.s or u.d),
otherwise it will be a ``Quantity``.
> Multiplication between two ``TimeDelta`` instances is now possible, resulting
in a ``Quantity`` with units of time squared (division already correctly
resulted in a dimensionless ``Quantity``).
> Like for comparisons, addition, and subtraction of ``Time`` instances with
with non-time instances, multiplication and division of ``TimeDelta``
instances with incompatible other instances no longer immediately raise an
``UnitsError`` or ``TypeError`` (depending on the other instance), but
rather go through the regular Python mechanism of ``TimeDelta`` returning
``NotImplemented`` (which will lead to a regular ``TypeError`` unless the
other instance can handle ``TimeDelta``).
> Corrected small rounding errors that could cause the ``jd2`` values in
``Time`` to fall outside the range of -0.5 to 0.5.
* astropy.units
> Added a ``Quantity.to_string`` method to add flexibility to the string formatting
of quantities. It produces unadorned or LaTeX strings, and accepts two different
sets of delimiters in the latter case: ``inline`` and ``display``.
> Ensure classes that mimic quantities by having a ``unit`` attribute and/or
``to`` and ``to_value`` methods can be properly used to initialize ``Quantity``
or set ``Quantity`` instance items.
> Add support for ``<<`` to create logarithmic units.
> Add support for the ``clip`` ufunc, which in numpy 1.17 is used to implement
``np.clip``. As part of that, remove the ``Quantity.clip`` method under
numpy 1.17.
> Fix parsing of numerical powers in FITS-compatible units.
* astropy.wcs
> Added a ``PyUnitListProxy_richcmp`` method in ``UnitListProxy`` class to enable
``WCS.wcs.cunit`` equality testing. It helps to check whether the two instances of
``WCS.wcs.cunit`` are equal or not by comparing the data members of
``UnitListProxy`` class
> Fixed ``SlicedLowLevelWCS`` when ``array_shape`` is ``None``.
> Do not attempt to delete repeated distortion keywords multiple times when
loading distortions with ``_read_distortion_kw`` and
``_read_det2im_kw``.
+ Other Changes and Additions
> Update bundled expat to 2.2.6.
> Added instructions for uploading releases to Zenodo.
> The bug fixes to the behaviour of ``TimeDelta`` for multiplcation and
division, which ensure that the output is now always a ``TimeDelta`` if the
result is a time unit (like u.s or u.d) and otherwise a ``Quantity``, imply
that sometimes the output type will be different than it was before.
> For types unrecognized by ``TimeDelta``, multiplication and division now
will consistently return a ``TypeError`` if the other instance cannot handle
``TimeDelta`` (rather than ``UnitsError`` or ``TypeError`` depending on
presumed abilities of the other instance).
> Multiplication between two ``TimeDelta`` instances will no longer result in
an ``OperandTypeError``, but rather result in a ``Quantity`` with units of
time squared (division already correctly resulted in a dimensionless
``Quantity``).
> Made running the tests insensitive to local user configuration when running
the tests in parallel mode or directly with pytest.
> Added a narrative style guide to the documentation for contributor reference.
> Ensure we call numpy equality functions in a way that reduces the number
of ``DeprecationWarning``.
+ Installation
> We now require setuptools 30.3.0 or later to install the core astropy
package.
> We now define groups of dependencies that can be installed with pip, e.g.
``pip install astropy[all]`` (to install all optional dependencies).
OBS-URL: https://build.opensuse.org/request/show/717717
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-astropy?expand=0&rev=9
2019-07-23 04:10:03 +02:00
|
|
|
%define skip_python2 1
|
2020-11-29 12:14:16 +01:00
|
|
|
# upcoming python3 multiflavor: minimum supported python is 3.7
|
|
|
|
%define skip_python36 1
|
2020-12-10 00:08:56 +01:00
|
|
|
Name: python-astropy%{psuffix}
|
2021-08-18 13:38:58 +02:00
|
|
|
Version: 4.3.1
|
2017-08-24 18:28:41 +02:00
|
|
|
Release: 0
|
|
|
|
Summary: Community-developed python astronomy tools
|
|
|
|
License: BSD-3-Clause
|
2019-11-20 21:12:59 +01:00
|
|
|
URL: https://astropy.org
|
2017-08-24 18:28:41 +02:00
|
|
|
Source: https://files.pythonhosted.org/packages/source/a/astropy/astropy-%{version}.tar.gz
|
|
|
|
# Mark wcs headers as false positives for devel-file-in-non-devel-package
|
|
|
|
# These are used by the python files so they must be available.
|
|
|
|
Source100: python-astropy-rpmlintrc
|
2021-08-05 21:04:41 +02:00
|
|
|
# https://docs.astropy.org/en/v4.3post1/install.html#requirements
|
2021-08-06 02:33:56 +02:00
|
|
|
# PATCH-FIX-UPSTREAM astropy-pr12006-cfitsio4.patch gh#astropy/astropy#12006
|
|
|
|
Patch1: https://github.com/astropy/astropy/pull/12006.patch#/astropy-pr12006-cfitsio4.patch
|
2021-08-05 21:04:41 +02:00
|
|
|
BuildRequires: %{python_module Cython >= 0.29.22}
|
2020-10-23 13:32:38 +02:00
|
|
|
BuildRequires: %{python_module Jinja2}
|
2021-01-15 19:00:59 +01:00
|
|
|
BuildRequires: %{python_module devel >= 3.7}
|
2020-10-23 13:32:38 +02:00
|
|
|
BuildRequires: %{python_module extension-helpers}
|
2020-11-29 12:14:16 +01:00
|
|
|
BuildRequires: %{python_module numpy-devel >= 1.17}
|
2021-08-05 21:04:41 +02:00
|
|
|
BuildRequires: %{python_module pyerfa >= 1.7.3}
|
2020-10-23 13:32:38 +02:00
|
|
|
BuildRequires: %{python_module setuptools_scm}
|
2017-08-24 18:28:41 +02:00
|
|
|
BuildRequires: %{python_module setuptools}
|
|
|
|
BuildRequires: fdupes
|
|
|
|
BuildRequires: hdf5-devel
|
2019-04-11 18:11:30 +02:00
|
|
|
BuildRequires: pkgconfig
|
2017-08-24 18:28:41 +02:00
|
|
|
BuildRequires: python-rpm-macros
|
2020-01-07 12:36:00 +01:00
|
|
|
Requires: python-dbm
|
2020-11-29 12:14:16 +01:00
|
|
|
Requires: python-numpy >= 1.17
|
2021-08-05 21:04:41 +02:00
|
|
|
Requires: python-pyerfa >= 1.7.3
|
2020-05-28 09:33:22 +02:00
|
|
|
Requires(post): update-alternatives
|
2021-04-08 19:31:25 +02:00
|
|
|
Requires(postun):update-alternatives
|
2019-04-11 18:11:30 +02:00
|
|
|
Recommends: libxml2-tools
|
2020-05-28 09:33:22 +02:00
|
|
|
Recommends: python-Bottleneck
|
2020-11-29 12:14:16 +01:00
|
|
|
Recommends: python-PyYAML >= 3.13
|
2020-10-23 13:32:38 +02:00
|
|
|
Recommends: python-asdf >= 2.6
|
2019-04-11 18:11:30 +02:00
|
|
|
Recommends: python-beautifulsoup4
|
|
|
|
Recommends: python-bleach
|
|
|
|
Recommends: python-h5py
|
2020-10-23 13:32:38 +02:00
|
|
|
Recommends: python-html5lib
|
2019-04-11 18:11:30 +02:00
|
|
|
Recommends: python-jplephem
|
2020-11-29 12:14:16 +01:00
|
|
|
Recommends: python-matplotlib >= 3
|
2020-10-23 13:32:38 +02:00
|
|
|
Recommends: python-mpmath
|
2019-04-11 18:11:30 +02:00
|
|
|
Recommends: python-pandas
|
2020-11-29 12:14:16 +01:00
|
|
|
Recommends: python-scipy >= 1.1
|
2020-10-23 13:32:38 +02:00
|
|
|
Recommends: python-setuptools
|
|
|
|
Recommends: python-sortedcontainers
|
2019-11-20 21:12:59 +01:00
|
|
|
Conflicts: perl-Data-ShowTable
|
2021-08-05 21:04:41 +02:00
|
|
|
%if %{with system_cfitsio}
|
2020-10-23 13:32:38 +02:00
|
|
|
BuildRequires: pkgconfig(cfitsio)
|
2021-08-05 21:04:41 +02:00
|
|
|
%endif
|
|
|
|
%if %{with system_expat}
|
2020-10-23 13:32:38 +02:00
|
|
|
BuildRequires: pkgconfig(expat)
|
2021-08-05 21:04:41 +02:00
|
|
|
%endif
|
|
|
|
%if %{with system_wcslib}
|
2020-10-23 13:32:38 +02:00
|
|
|
BuildRequires: pkgconfig(wcslib) >= 7
|
|
|
|
%endif
|
2020-06-03 09:43:14 +02:00
|
|
|
%if %{with test}
|
Accepting request 663419 from devel:languages:python:numeric
- Use pytest-astropy since it is in Factory now.
- Update to version 3.1
+ New Features
> astropy.convolution
* ``convolve`` now accepts any array-like input, not just ``numpy.ndarray`` or
lists. [#7303]
* ``convolve`` Now raises AstropyUserWarning if nan_treatment='interpolate' and
preserve_nan=False and NaN values are present post convolution. [#8088]
> astropy.coordinates
* The ``SkyCoord.from_name`` constructor now has the ability to create
coordinate objects by parsing object catalogue names that have embedded
J-coordinates. [#7830]
* The new function ``make_transform_graph_docs`` can be used to create a
docstring graph from a custom ``TransformGraph`` object. [#7135]
* ``KDTree`` for catalog matching is now built with sliding midpoint rule
rather than standard. In code, this means setting ``compact_nodes=False``
and ``balanced_tree=False`` in ``cKDTree``. The sliding midpoint rule is much
more suitable for catalog matching, and results in 1000x speedup in some
cases. [#7324]
* Additional information about a site loaded from the Astropy sites registry is
now available in ``EarthLocation.info.meta``. [#7857]
* Added a ``concatenate_representations`` function to combine coordinate
representation data and any associated differentials. [#7922]
* ``BaseCoordinateFrame`` will now check for a method named
``_astropy_repr_in_frame`` when constructing the string forms of attributes.
Allowing any class to control how ``BaseCoordinateFrame`` represents it when
it is an attribute of a frame. [#7745]
* Some rarely-changed attributes of frame classes are now cached, resulting in
speedups (up to 50% in some cases) when creating new scalar frame or
``SkyCoord`` objects. [#7949, #5952]
* Added a ``directional_offset_by`` method to ``SkyCoord`` that computes a new
coordinate given a coordinate, position angle, and angular separation [#5727]
> astropy.cosmology
* The default cosmology has been changed from ``WMAP9`` to ``Planck15``. [#8123]
* Distance calculations with ``LambaCDM`` with no radiation (T_CMB0=0)
are now 20x faster by using elliptic integrals for non-flat cases. [#7155]
* Distance calculations with ``FlatLambaCDM`` with no radiation (T_CMB0=0)
are now 20x faster by using the hypergeometric function solution
for this special case. [#7087]
* Age calculations with ``FlatLambdaCDM`` with no radiation (Tcmb0=0)
are now 1000x faster by using analytic solutions instead of integrating.
[#7117]
> astropy.io.ascii
* Latex reader now ignores ``\toprule``, ``\midrule``, and ``\bottomrule``
commands. [#7349]
* Added the RST (Restructured-text) table format and the fast version of the
RDB reader to the set of formats that are guessed by default. [#5578]
* The read trace (used primarily for debugging) now includes guess argument
sets that were skipped entirely e.g. for not supporting user-supplied kwargs.
All guesses thus removed from ``filtered_guess_kwargs`` are now listed as
"Disabled" at the beginning of the trace. [#5578]
* Emit a warning when reading an ECSV file without specifying the ``format``
and without PyYAML installed. Previously this silently fell through to
parsing as a basic format file and the file metadata was lost. [#7580]
* Optionally allow writing masked columns to ECSV with the mask explicitly
specified as a separate column instead of marking masked elements with ""
(empty string). This allows handling the case of a masked string column
with "" data rows. [#7481]
> astropy.io.misc
* Added support for saving all representation classes and many coordinate
frames to the asdf format. [#7079]
* Added support for saving models with units to the asdf format. [#7237]
* Added a new ``character_as_bytes`` keyword to the HDF5 Table reading
function to control whether byte string columns in the HDF5 file
are left as bytes or converted to unicode. The default is to read
as bytes (``character_as_bytes=True``). [#7024, #8017]
> astropy.io.fits
* ``HDUList.pop()`` now accepts string and tuple extension name
specifications. [#7236]
* Add an ``ignore_hdus`` keyword to ``FITSDiff`` to allow ignoring HDUs by
NAME when diffing two FITS files [#7538]
* Optionally allow writing masked columns to FITS with the mask explicitly
specified as a separate column instead of using the FITS standard of
certain embedded null values (``NaN`` for float, ``TNULL`` for integers).
This can be used to work around limitations in the FITS standard. [#7481]
* All time coordinates can now be written to and read from FITS binary tables,
including those with vectorized locations. [#7430]
* The ``fitsheader`` command line tool now supports a ``dfits+fitsort`` mode,
and the dotted notation for keywords (e.g. ``ESO.INS.ID``). [#7240]
* Fall back to reading arrays using mode='denywrite' if mode='readonly' fails
when using memory-mapping. This solves cases on some platforms when the
available address space was less than the file size (even when using memory
mapping). [#7926]
> astropy.modeling
* Add a ``Multiply`` model which preserves unit through evaluate, unlike
``Scale`` which is dimensionless. [#7210]
* Add a ``uses_quantity`` property to ``Model`` which allows introspection of if
the ``Model`` can accept ``Quantity`` objects. [#7417]
* Add a ``separability_matrix`` function which returns the correlation matrix
of inputs and outputs. [#7803]
* Fixed compatibility of ``JointFitter`` with the latest version of Numpy. [#7984]
* Add ``prior`` and ``posterior`` constraints to modeling parameters. These are
not used by any current fitters, but are provided to allow user code to
experiment with Bayesian fitters. [#7558]
> astropy.nddata
* ``NDUncertainty`` objects now have a ``quantity`` attribute for simple
conversion to quantities. [#7704]
* Add a ``bitmask`` module that provides functions for manipulating bitmasks
and data quality (DQ) arrays. [#7944]
> astropy.stats
* Add an ``astropy.stats.bls`` module with an implementation of the "box least
squares" periodogram that is commonly used for discovering transiting
exoplanets and eclipsing binaries. [#7391]
> astropy.table
* Added support for full use of ``Time`` mixin column for join, hstack, and
vstack table operations. [#6888]
* Added a new table index engine, ``SCEngine``, based on the Sorted Containers
package. [#7574]
* Add a new keyword argument ``serialize_method`` to ``Table.write`` to
control how ``Time`` and ``MaskedColumn`` columns are written. [#7481]
* Allow mixin columns to be used in table ``group`` and ``unique``
functions. This applies to both the key columns and the other data
columns. [#7712]
* Added support for stacking ``Column``, mixin column (e.g. ``Quantity``,
``Time``) or column-like objects. [#7674]
* Added support for inserting a row into a Table that has ``Time`` or
``TimeDelta`` column(s). [#7897]
> astropy.tests
* Added an option ``--readonly`` to the test command to change the
permissions on the temporary installation location to read-only. [#7598]
> astropy.time
* Allow array-valued ``Time`` object to be modified in place. [#6028]
* Added support for missing values (masking) to the ``Time`` class. [#6028]
* Added supper for a 'local' time scale (for free-running clocks, etc.),
and round-tripping to the corresponding FITS time scale. [#7122]
* Added `datetime.timedelta` format class for ``TimeDelta``. [#7441]
* Added ``strftime`` and ``strptime`` methods to ``Time`` class.
These methods are similar to those in the Python standard library
`time` package and provide flexible input and output formatting. [#7323]
* Added ``datetime64`` format to the ``Time`` class to support working with
``numpy.datetime64`` dtype arrays. [#7361]
* Add fractional second support for ``strftime`` and ``strptime`` methods
of ``Time`` class. [#7705]
* Added an ``insert`` method to allow inserting one or more values into a
``Time`` or ``TimeDelta`` object. [#7897]
* Remove timescale from string version of FITS format time string.
The timescale is not part of the FITS standard and should not be included.
This change may cause some compatibility issues for code that relies on
round-tripping a FITS format string with a timescale. Strings generated
from previous versions of this package are still understood but a
DeprecationWarning will be issued. [#7870]
> astropy.uncertainty
* This sub-package was added as a "preview" (i.e. API unstable), containing
the ``Distribution`` class and associated convenience functions. [#6945]
> astropy.units
* Add complex numbers support for ``Quantity._repr_latex_``. [#7676]
* Add ``thermodynamic_temperature`` equivalency to convert between
Jy/beam and "thermodynamic temperature" for cosmology. [#7054]
* Add millibar unit. [#7863]
* Add maggy and nanomaggy unit, as well as associated ``zero_point_flux``
equivalency. [#7891]
* ``AB`` and ``ST`` are now enabled by default, and have alternate names
``ABflux`` and ``STflux``. [#7891]
* Added ``littleh`` unit and associated ``with_H0`` equivalency. [#7970]
> astropy.visualization
* Added ``imshow_norm`` function, which combines imshow and creation of a
``ImageNormalize`` object. [#7785]
> astropy.visualization.wcsaxes
* Add support for setting ``set_separator(None)`` in WCSAxes to use default
separators. [#7570]
* Added two keyword argument options to ``CoordinateHelper.set_format_unit``:
``decimal`` can be used to specify whether to use decimal formatting for the
labels (by default this is False for degrees and hours and True otherwise),
and ``show_decimal_unit`` can be used to determine whether the units should be
shown for decimal labels. [#7318]
* Added documentation for ``transform=`` and ``coord_meta=``. [#7698]
* Allow ``coord_meta=`` to optionally include ``format_unit=``. [#7848]
* Add support for more rcParams related to the grid, ticks, and labels, and
should work with most built-in Matplotlib styles. [#7961]
* Improved rendering of outward-facing ticks. [#7961]
* Add support for ``tick_params`` (which is a standard Matplotlib
function/method) on both the ``WCSAxes`` class and the individual
``CoordinateHelper`` classes. Note that this is provided for compatibility
with Matplotlib syntax users may be familiar with, but it is not the
preferred way to change settings. Instead, methods such as ``set_ticks``
should be preferred. [#7969]
* Moved the argument ``exclude_overlapping`` from ``set_ticks`` to
``set_ticklabel``. [#7969]
* Added a ``pad=`` argument to ``set_ticklabel`` to provide a way to control
the padding between ticks and tick labels. [#7969]
* Added support for setting the tick direction in ``set_ticks`` using the
``direction=`` keyword argument. [#7969]
> astropy.wcs
* Map ITRS frames to terrestrial WCS coordinates. This will make it possible to
use WCSAxes to make figures that combine both celestial and terrestrial
features. An example is plotting the coordinates of an astronomical transient
over an all- sky satellite image to illustrate the position relative to the
Earth at the time of the event. The ITRS frame is identified with WCSs that
use the ``TLON-`` and ``TLAT-`` coordinate types. There are several examples
of WCSs where this syntax is used to describe terrestrial coordinate systems:
Section 7.4.1 of `WCS in FITS "Paper II" <http://adsabs.harvard.edu/abs/2002A%26A...395.1077C>`_
and the `WCSTools documentation <http://tdc-www.harvard.edu/software/wcstools/wcstools.multiwcs.html>`_.
[#6990]
* Added the abstract base class for the low-level WCS API described in APE 14
(https://doi.org/10.5281/zenodo.1188875). [#7325]
* Add ``WCS.contains()`` function to check if the WCS footprint contains a given sky coordinate. [#7273]
* Added the abstract base class for the high-level WCS API described in APE 14
(https://doi.org/10.5281/zenodo.1188875). [#7325]
* Added the high-level wrapper class for low-level WCS objects as described in
APE 14 (https://doi.org/10.5281/zenodo.1188875). [#7326]
* Added a new property ``WCS.has_distortion``. [#7326]
* Deprecated ``_naxis1`` and ``_naxis2`` in favor of ``pixel_shape``. [#7973]
* Added compatibility to wcslib version 6. [#8093]
+ API Changes
> astropy.convolution
* ``kernel`` can now be a tuple. [#7561]
* Not technically an API changes, however, the docstring indicated that ``boundary=None``
was the default when actually it is ``boundary='fill'``. The docstring has been corrected,
however, someone may interpret this as an API change not realizing that nothing has actually
changed. [#7293]
* ``interpolate_replace_nans()`` can no longer accept the keyword argument
``preserve_nan``. It is explicitly set to ``False``. [#8088]
> astropy.coordinates
* Fixed ``astropy.coordinates.concatenate`` to include velocity data in the
concatenation. [#7922]
* Changed the name of the single argument to ``Frame.realize_frame()`` from the
(incorrect) ``representation_type`` to ``data``. [#7923]
* Negative parallaxes passed to ``Distance()`` now raise an error by default
(``allow_negative=False``), or are converted to NaN values with a warning
(``allow_negative=True``). [#7988]
* Negating a ``SphericalRepresentation`` object now changes the angular
coordinates (by rotating 180º) instead of negating the distance. [#7988]
* Creation of new frames now generally creates copies of frame attributes,
rather than inconsistently either copying or making references. [#8204]
* The frame class method ``is_equivalent_frame`` now checks for equality of
components to determine if a frame is the same when it has frame attributes
that are representations, rather than checking if they are the same
object. [#8218]
> astropy.io.ascii
* If a fast reader is explicitly selected (e.g. ``fast_reader='force'``) and
options which are incompatible with the fast reader are provided
(e.g. ``quotechar='##'``) then now a ``ParameterError`` exception will be
raised. [#5578]
* The fast readers will now raise ``InconsistentTableError`` instead of
``CParserError`` if the number of data and header columns do not match.
[#5578]
* Changed a number of ``ValueError`` exceptions to ``InconsistentTableError``
in places where the exception is related to parsing a table which is
inconsistent with the specified table format. Note that
``InconsistentTableError`` inherits from ``ValueError`` so no user code
changes are required. [#7425]
> astropy.io.fits
* The ``fits.table_to_hdu()`` function will translate any column ``format``
attributes to a TDISPn format string, if possible, and store it as a TDISPn
keyword in the ``HDU`` header. [#7226]
> astropy.modeling
* Change the order of the return values from ``FittingWithOutlierRemoval``,
such that ``fitted_model`` comes first, for consistency with other fitters.
For the second value, return only a boolean outlier ``mask``, instead of the
previous ``MaskedArray`` (which included a copy of the input data that was
both redundant and inadvertently corrupted at masked points). Return a
consistent type for the second value when ``niter=0``. [#7407]
* Set the minimum value for the ``bolometric_flux`` parameter of the
``BlackBody1D`` model to zero. [#7045]
> astropy.nddata
* Add two new uncertainty classes, ``astropy.nddata.VarianceUncertainty`` and
``astropy.nddata.InverseVariance``. [#6971]
> astropy.stats
* String values can now be used for the ``cenfunc`` and ``stdfunc``
keywords in the ``SigmaClip`` class and ``sigma_clip`` and
``sigma_clipped_stats`` functions. [#7478]
* The ``SigmaClip`` class and ``sigma_clip`` and
``sigma_clipped_stats`` functions now have a ``masked`` keyword,
which can be used to return either a masked array (default) or an
ndarray with the min/max values. [#7478]
* The ``iters`` keyword has been renamed (and deprecated) to
``maxiters`` in the ``SigmaClip`` class and ``sigma_clip`` and
``sigma_clipped_stats`` functions. [#7478]
> astropy.table
* ``Table.read()`` on a FITS binary table file will convert any TDISPn header
keywords to a Python formatting string when possible, and store it in the
column ``format`` attribute. [#7226]
* No values provided to stack will now raise ``ValueError`` rather than
``TypeError``. [#7674]
> astropy.tests
* ``from astropy.tests.helper import *`` no longer includes
``quantity_allclose``. However,
``from astropy.tests.helper import quantity_allclose`` would still work.
[#7381]
* ``warnings_to_ignore_by_pyver`` option in
``enable_deprecations_as_exceptions()`` now takes ``None`` as key.
Any deprecation message that is mapped to ``None`` will be ignored
regardless of the Python version. [#7790]
> astropy.time
* Added the ability to use ``local`` as time scale in ``Time`` and
``TimeDelta``. [#6487]
* Comparisons, addition, and subtraction of ``Time`` instances with non-time
instances will now return ``NotImplemented`` rather than raise the
``Time``-specific ``OperandTypeError``. This will generally lead to a
regular ``TypeError``. As a result, ``OperandTypeError`` now only occurs if
the operation is between ``Time`` instances of incompatible type or scale.
[#7584]
> astropy.units
* In ``UnitBase.compose()``, if a sequence (list|tuple) is passed in to
``units``, the default for ``include_prefix_units`` is set to
`True`, so that no units get ignored. [#6957]
* Negative parallaxes are now converted to NaN values when using the
``parallax`` equivalency. [#7988]
> astropy.utils
* ``InheritDocstrings`` now also works on class properties. [#7166]
* ``diff_values()``, ``report_diff_values()``, and ``where_not_allclose()``
utility functions are moved from ``astropy.io.fits.diff``. [#7444]
* ``invalidate_caches()`` has been removed from the
``astropy.utils.compat`` namespace, use it directly from ``importlib``. [#7872]
> astropy.visualization
* In ``ImageNormalize``, the default for ``clip`` is set to ``True``. [#7800]
* Changed ``AsymmetricPercentileInterval`` and ``MinMaxInterval`` to
ignore NaN values in arrays. [#7360]
* Automatically default to using ``grid_type='contours'`` in WCSAxes when using
a custom ``Transform`` object if the transform has no inverse. [#7847]
+ Performance Improvements
* Reduced import time by more cautious use of the standard library. [#7647]
> astropy.convolution
* Major performance overhaul to ``convolve()``. [#7293]
* ``convolve()``: Boundaries ``fill``, ``extend``, and ``wrap`` now use a single
implementation that pads the image with the correct boundary values before convolving.
The runtimes of these three were significantly skewed. They now have
equivalent runtimes that are also faster than before due to performant contiguous
memory access. However, this does increase the memory footprint as an entire
new image array is required plus that needed for the padded region.[#7293]
* ``convolve()``: Core computation ported from Cython to C. Several optimization
techniques have been implemented to achieve performance gains, e.g. compiler
hoisting, and vectorization, etc. Compiler optimization level ``-O2`` required for
hoisting and ``-O3`` for vectorization. [#7293]
* ``convolve()``: ``nan_treatment=‘interpolate’`` was slow to compute irrespective of
whether any NaN values exist within the array. The input array is now
checked for NaN values and interpolation is disabled if non are found. This is a
significant performance boost for arrays without NaN values. [#7293]
> astropy.coordinates
* Sped up creating SkyCoord objects by a factor of ~2 in some cases. [#7615]
* Sped up getting xyz vectors from ``CartesianRepresentation`` (which
is used a lot internally). [#7638]
* Sped up transformations and some representation methods by replacing
python code with (compiled) ``erfa`` ufuncs. [#7639]
* Sped up adding differential (velocity) data to representations by a factor of
~20, which improves the speed of frame and SkyCoord initialization. [#7924]
* Refactored ``SkyCoord`` initializer to improve performance and code clarity.
[#7958]
* Sped up initialization of ``Longitude`` by ~40%. [#7616]
> astropy.stats
* The ``SigmaClip`` class and ``sigma_clip`` and
``sigma_clipped_stats`` functions are now significantly faster. [#7478]
* A Cython implementation for `astropy.stats.kuiper_two` and a vectorized
implementation for `astropy.stats.kuiper_false_positive_probability` have
been added, speeding up both functions. [#8104]
> astropy.units
* Sped up creating new composite units, and raising units to some power
[#7549, #7649]
* Sped up Unit.to when target unit is the same as the original unit.
[#7643]
* Lazy-load ``scipy.special`` to shorten ``astropy.units`` import time. [#7636]
> astropy.visualization
* Significantly sped up drawing of contours in WCSAxes. [#7568]
+ Bug Fixes
> astropy.convolution
* Fixed bug in ``convolve_fft`` where masked input was copied with
``numpy.asarray`` instead of ``numpy.asanyarray``.
``numpy.asarray`` removes the mask subclass causing
``numpy.ma.ismasked(input)`` to fail, causing ``convolve_fft``
to ignore all masked input. [#8137]
* Remove function side-effects of input data from ``convolve_fft``.
It was possible for input data to remain modified if particular exceptions
were raised. [#8152]
> astropy.coordinates
* ``EarthLocation.of_address`` now uses the OpenStreetMap geocoding API by
default to retrieve coordinates, with the Google API (which now requires an
API key) as an option. [#7918]
* Fixed a bug that caused frame objects with NaN distances to have NaN sky
positions, even if valid sky coordinates were specified. [#7988]
* Fixed ``represent_as()`` to not round-trip through cartesian if the same
representation class as the instance is passed in. [#7988]
> astropy.io.ascii
* Fixed a problem when ``guess=True`` that ``fast_reader`` options
could be dropped after the first fast reader class was tried. [#5578]
* Units in CDS-formatted tables are now parsed correctly by the units
module. [#7348]
> astropy.io.misc
* Fixed bug when writing a table with masked columns to HDF5. Previously
the mask was being silently dropped. If the ``serialize_meta`` option is
enabled the data mask will now be written as an additional column and the
masked columns will round-trip correctly. [#7481]
* Fixed a bug where writing to HDF5 failed for for tables with columns of
unicode strings. Now those columns are first encoded to UTF-8 and
written as byte strings. [#7024, #8017]
* Fixed a bug with serializing the bounding_box of models initialized
with ``Quantities`` . [#8052]
> astropy.io.fits
* Added support for ``copy.copy`` and ``copy.deepcopy`` for ``HDUList``. [#7218]
* Override ``HDUList.copy()`` to return a shallow HDUList instance. [#7218]
> astropy.modeling
* Fix behaviour of certain models with units, by making certain unit-related
attributes readonly. [#7210]
* Fixed an issue with validating a ``bounding_box`` whose items are
``Quantities``. [#8052]
* Fix ``Moffat1D`` and ``Moffat2D`` derivatives. [#8108]
> astropy.nddata
* Fixed rounding behavior in ``overlap_slices`` for even-sized small
arrays. [#7859]
* Added support for pickling ``NDData`` instances that have an uncertainty.
[#7383]
> astropy.stats
* Fix errors in ``kuiper_false_positive_probability``. [#7975]
> astropy.tests
* Fixing bug that prevented to run the doctests on only a single rst documentation
file rather than all of them. [#8055]
> astropy.time
* Fix a bug when setting a ``TimeDelta`` array item with plain float value(s).
This was always interpreted as a JD (day) value regardless of the
``TimeDelta`` format. [#7990]
> astropy.units
* To simplify fast creation of ``Quantity`` instances from arrays, one can now
write ``array << unit`` (equivalent to ``Quantity(array, unit, copy=False)``).
If ``array`` is already a ``Quantity``, this will convert the quantity to the
requested units; in-place conversion can be done with ``quantity <<= unit``.
[#7734]
> astropy.utils
* Fixed a bug due to which ``report_diff_values()`` was reporting incorrect
number of differences when comparing two ``numpy.ndarray``. [#7470]
* The download progress bar is now only displayed in terminals, to avoid
polluting piped output. [#7577]
* Ignore URL mirror caching when there is no internet. [#8163]
> astropy.visualization
* Right ascension coordinates are now shown in hours by default, and the
``set_format_unit`` method on ``CoordinateHelper`` now works correctly
with angle coordinates. [#7215]
+ Other Changes and Additions
* The documentation build now uses the Sphinx configuration from sphinx-astropy
rather than from astropy-helpers. [#7139]
* Versions of Numpy <1.13 are no longer supported. [#7058]
* Running tests now suppresses the output of the installation stage by default,
to allow easier viewing of the test results. To re-enable the output as
before, use ``python setup.py test --verbose-install``. [#7512]
* The ERFA functions are now wrapped in ufuncs instead of custom C code,
leading to some speed improvements, and setting the stage for allowing
overrides with ``__array_ufunc__``. [#7502]
* Updated the bundled CFITSIO library to 3.450. See
``cextern/cfitsio/docs/changes.txt`` for additional information. [#8014]
* The ``representation`` keywords in coordinate frames are now deprecated in
favor of the ``representation_type`` keywords (which are less
ambiguously named). [#8119]
- Update to 3.0.5
* Update to 3.* is a large step, which contains these main
improvements:
- Full support for velocities in astropy.coordinates
- Support for position updates based on source motion for
SkyCoord objects
- Context managers for versioned constants
- Support for quantities in scipy special functions
- showtable command line script
- Lossless writing and reading mixin columns to HDF5 and
FITS
- Support for FITS time standard
- FITS table performance enhancements
- False alarm probabilities in astropy.stats.LombScargle
- Reading large ASCII files in chunks
- Astropy now only supports Python 3
- pytest plugins moved to external packages
Full changelog is available at http://docs.astropy.org/en/stable/changelog.html
OBS-URL: https://build.opensuse.org/request/show/663419
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-astropy?expand=0&rev=4
2019-01-21 10:47:14 +01:00
|
|
|
# SECTION Optional requirements
|
Accepting request 795557 from home:bnavigator:branches:devel:languages:python:numeric
- Update to 4.0.1.post1
* astropy.config
[gh#astropy/astropy#9975]
Fixed a bug where importing a development version of a package that
uses ``astropy`` configuration system can result in a
``~/.astropy/config/package..cfg`` file.
* astropy.coordinates
[gh#astropy/astropy#9815]
Fixed a bug where a vestigal trace of a frame class could persist in the
transformation graph even after the removal of all transformations involving
that frame class.
[gh#astropy/astropy#9815]
Fixed a bug with ``TransformGraph.remove_transform()`` when the "from" and
"to" frame classes are not explicitly specified.
[gh#astropy/astropy#9900]
Read-only longitudes can now be passed in to ``EarthLocation`` even if
they include angles outside of the range of -180 to 180 degrees.
[gh#astropy/astropy#9980]
```SkyCoord.radial_velocity_correction``` no longer raises an Exception
when space motion information is present on the SkyCoord.
* astropy.io
[gh#astropy/astropy#9866]
Fixed a bug that prevented the unified I/O infrastructure from working with
datasets that are represented by directories rather than files.
* astropy.io.ascii
[gh#astropy/astropy#9918]
Fixed a bug in the ``fast_reader`` C parsers incorrectly returning entries
of isolated positive/negative signs as ``float`` instead of ``str``.
[gh#astropy/astropy#9923]
Fixed a segmentation fault in the ``fast_reader`` C parsers when parsing an
invalid file with ``guess=True`` and the file contains inconsistent column
numbers in combination with a quoted field; e.g., ``"1 2\n 3 4 '5'"``.
[gh#astropy/astropy#9933]
Magnitude, decibel, and dex can now be stored in ``ecsv`` files.
* astropy.io.misc
[gh#astropy/astropy#9933]
Magnitude, decibel, and dex can now be stored in ``hdf5`` files.
[gh#astropy/astropy#9956, gh#astropy/astropy#9961]
Fixed serialization of polynomial models to include non default values of
domain and window values.
[gh#astropy/astropy#9950]
Fixed a bug which affected overwriting tables within ``hdf5`` files.
Overwriting an existing path with associated column meta data now also
overwrites the meta data associated with the table.
[gh#astropy/astropy#9983]
Fixed serialization of Time objects with location under time-1.0.0
ASDF schema.
* astropy.io.fits
[gh#astropy/astropy#9711, gh#astropy/astropy#9934]
Fix regression with ``GroupsHDU`` which needs to modify the header to handle
invalid headers, and fix accesing ``.data`` for empty HDU.
[gh#astropy/astropy#9711]
Fix ``fitsdiff`` when its arguments are directories that contain other
directories.
[gh#astropy/astropy#9958]
Fix writing noncontiguous data to a compressed HDU.
[gh#astropy/astropy#9978]
Added verification of ``disp`` (``TDISP``) keyword to ``fits.Column`` and
extended tests for ``TFORM`` and ``TDISP`` validation.
[gh#astropy/astropy#10012]
Fix checksum verification to process all HDUs instead of only the first one
because of the lazy loading feature.
[gh#astropy/astropy#10030]
Allow passing ``output_verify`` to ``.close`` when using the context manager.
[gh#astropy/astropy#10041]
Prevent instantiation of ``PrimaryHDU`` and ``ImageHDU`` with a scalar.
[gh#astropy/astropy#10069]
Fix column access by attribute with FITS_rec: columns with scaling or columns
from ASCII tables where not properly converted when accessed by attribute
name.
* astropy.io.misc
[gh#astropy/astropy#9933]
Magnitude, decibel, and dex can now be stored in ``hdf5`` files.
[gh#astropy/astropy#9956, gh#astropy/astropy#9961]
Fixed serialization of polynomial models to include non default values of
domain and window values.
[gh#astropy/astropy#9950]
Fixed a bug which affected overwriting tables within ``hdf5`` files.
Overwriting an existing path with associated column meta data now also
overwrites the meta data associated with the table.
[gh#astropy/astropy#9983]
Fixed serialization of Time objects with location under time-1.0.0
ASDF schema.
* astropy.modeling
[gh#astropy/astropy#9987]
Fixed a bug in setting default values of parameters of orthonormal
polynomials when constructing a model set.
* astropy.table
[gh#astropy/astropy#9839]
Fixed bug in ``Table.reverse`` for tables that contain non-mutable mixin columns
(like ``SkyCoord``) for which in-place item update is not allowed.
[gh#astropy/astropy#9933]
Tables containing Magnitude, decibel, and dex columns can now be saved to
``ecsv`` files.
[gh#astropy/astropy#10027]
Fixed bug where adding or inserting a row fails on a table with an index
defined on a column that is not the first one.
[gh#astropy/astropy#10068]
Ensured that ``table.show_in_browser`` also worked for mixin columns like
``Time`` and ``SkyCoord``.
* astropy.time
[gh#astropy/astropy#9679]
Fix inaccuracy when converting between TimeDelta and datetime.timedelta.
[gh#astropy/astropy#9812]
Fixed exception when changing ``format`` in the case when ``out_subfmt`` is
defined and is incompatible with the new format.
[gh#astropy/astropy#9812]
Fixed exceptions in ``Time.to_value()``: when supplying any ``subfmt`` argument
for string-based formats like 'iso', and for ``subfmt='long'`` for the formats
'byear', 'jyear', and 'decimalyear'.
[gh#astropy/astropy#9969]
Fixed bug where the location attribute was lost when creating a new ``Time``
object from an existing ``Time`` or list of ``Time`` objects.
[gh#astropy/astropy#10034]
Fixed a bug where an exception occurred when creating a ``Time`` object
if the ``val1`` argument was a regular double and the ``val2`` argument
was a ``longdouble``.
* astropy.timeseries
[gh#astropy/astropy#10013]
Fixed issue with reference time for the ``transit_time`` parameter returned by
the ``BoxLeastSquares`` periodogram. Now, the ``transit_time`` will be within
the range of the input data and arbitrary time offsets/zero points no longer
affect results.
* astropy.units
[gh#astropy/astropy#9948]
Fix for ``quantity_input`` annotation raising an exception on iterable
types that don't define a general ``__contains__`` for checking if ``None``
is contained (e.g. Enum as of python3.8), by instead checking for instance of
Sequence.
[gh#astropy/astropy#10066]
Fix for ``u.Quantity`` not taking into account ``ndmin`` if constructed from
another ``u.Quantity`` instance with different but convertible unit
* astropy.utils
[gh#astropy/astropy#9981]
Fixed ``deprecated_renamed_argument`` not passing in user value to
deprecated keyword when the keyword has no new name.
[gh#astropy/astropy#9985]
Fixed ``deprecated_renamed_argument`` not issuing a deprecation warning when
deprecated keyword without new name is passed in as positional argument.
[gh#astropy/astropy#10007]
Fixed detection of read-only filesystems in the caching code.
* astropy.visualization
[gh#astropy/astropy#9848]
Fixed bug from matplotlib >=3.1 where an empty Quantity array is
sent for unit conversion as an empty list.
[gh#astropy/astropy#9913]
Fix bug in ``ZScaleInterval`` to return the array minimum and
maximum when there are less then ``min_npixels`` in the input array.
[gh#astropy/astropy#8004, gh#astropy/astropy#9991]
Fix a bug in simplifying axis labels that affected non-rectangular frames.
* Increase minimum asdf version to 2.5.2.
[gh#astropy/astropy#9996, gh#astropy/astropy#9819]
* Updated wcslib to v7.2. [gh#astropy/astropy#10021]
- updated test requirements and recommends
- run pytest directly
OBS-URL: https://build.opensuse.org/request/show/795557
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-astropy?expand=0&rev=23
2020-04-20 19:58:35 +02:00
|
|
|
BuildRequires: %{python_module Bottleneck}
|
2020-11-29 12:14:16 +01:00
|
|
|
BuildRequires: %{python_module PyYAML >= 3.13}
|
2020-10-23 13:32:38 +02:00
|
|
|
BuildRequires: %{python_module asdf >= 2.6}
|
2017-08-24 18:28:41 +02:00
|
|
|
BuildRequires: %{python_module beautifulsoup4}
|
|
|
|
BuildRequires: %{python_module bleach}
|
|
|
|
BuildRequires: %{python_module h5py}
|
2020-10-23 13:32:38 +02:00
|
|
|
BuildRequires: %{python_module html5lib}
|
2017-08-24 18:28:41 +02:00
|
|
|
BuildRequires: %{python_module jplephem}
|
2020-11-29 12:14:16 +01:00
|
|
|
BuildRequires: %{python_module matplotlib >= 3}
|
2020-10-23 13:32:38 +02:00
|
|
|
BuildRequires: %{python_module mpmath}
|
2017-08-24 18:28:41 +02:00
|
|
|
BuildRequires: %{python_module pandas}
|
2020-11-29 12:14:16 +01:00
|
|
|
BuildRequires: %{python_module scipy >= 1.1}
|
2020-10-23 13:32:38 +02:00
|
|
|
BuildRequires: %{python_module sortedcontainers}
|
|
|
|
BuildRequires: libxml2-tools
|
Accepting request 663419 from devel:languages:python:numeric
- Use pytest-astropy since it is in Factory now.
- Update to version 3.1
+ New Features
> astropy.convolution
* ``convolve`` now accepts any array-like input, not just ``numpy.ndarray`` or
lists. [#7303]
* ``convolve`` Now raises AstropyUserWarning if nan_treatment='interpolate' and
preserve_nan=False and NaN values are present post convolution. [#8088]
> astropy.coordinates
* The ``SkyCoord.from_name`` constructor now has the ability to create
coordinate objects by parsing object catalogue names that have embedded
J-coordinates. [#7830]
* The new function ``make_transform_graph_docs`` can be used to create a
docstring graph from a custom ``TransformGraph`` object. [#7135]
* ``KDTree`` for catalog matching is now built with sliding midpoint rule
rather than standard. In code, this means setting ``compact_nodes=False``
and ``balanced_tree=False`` in ``cKDTree``. The sliding midpoint rule is much
more suitable for catalog matching, and results in 1000x speedup in some
cases. [#7324]
* Additional information about a site loaded from the Astropy sites registry is
now available in ``EarthLocation.info.meta``. [#7857]
* Added a ``concatenate_representations`` function to combine coordinate
representation data and any associated differentials. [#7922]
* ``BaseCoordinateFrame`` will now check for a method named
``_astropy_repr_in_frame`` when constructing the string forms of attributes.
Allowing any class to control how ``BaseCoordinateFrame`` represents it when
it is an attribute of a frame. [#7745]
* Some rarely-changed attributes of frame classes are now cached, resulting in
speedups (up to 50% in some cases) when creating new scalar frame or
``SkyCoord`` objects. [#7949, #5952]
* Added a ``directional_offset_by`` method to ``SkyCoord`` that computes a new
coordinate given a coordinate, position angle, and angular separation [#5727]
> astropy.cosmology
* The default cosmology has been changed from ``WMAP9`` to ``Planck15``. [#8123]
* Distance calculations with ``LambaCDM`` with no radiation (T_CMB0=0)
are now 20x faster by using elliptic integrals for non-flat cases. [#7155]
* Distance calculations with ``FlatLambaCDM`` with no radiation (T_CMB0=0)
are now 20x faster by using the hypergeometric function solution
for this special case. [#7087]
* Age calculations with ``FlatLambdaCDM`` with no radiation (Tcmb0=0)
are now 1000x faster by using analytic solutions instead of integrating.
[#7117]
> astropy.io.ascii
* Latex reader now ignores ``\toprule``, ``\midrule``, and ``\bottomrule``
commands. [#7349]
* Added the RST (Restructured-text) table format and the fast version of the
RDB reader to the set of formats that are guessed by default. [#5578]
* The read trace (used primarily for debugging) now includes guess argument
sets that were skipped entirely e.g. for not supporting user-supplied kwargs.
All guesses thus removed from ``filtered_guess_kwargs`` are now listed as
"Disabled" at the beginning of the trace. [#5578]
* Emit a warning when reading an ECSV file without specifying the ``format``
and without PyYAML installed. Previously this silently fell through to
parsing as a basic format file and the file metadata was lost. [#7580]
* Optionally allow writing masked columns to ECSV with the mask explicitly
specified as a separate column instead of marking masked elements with ""
(empty string). This allows handling the case of a masked string column
with "" data rows. [#7481]
> astropy.io.misc
* Added support for saving all representation classes and many coordinate
frames to the asdf format. [#7079]
* Added support for saving models with units to the asdf format. [#7237]
* Added a new ``character_as_bytes`` keyword to the HDF5 Table reading
function to control whether byte string columns in the HDF5 file
are left as bytes or converted to unicode. The default is to read
as bytes (``character_as_bytes=True``). [#7024, #8017]
> astropy.io.fits
* ``HDUList.pop()`` now accepts string and tuple extension name
specifications. [#7236]
* Add an ``ignore_hdus`` keyword to ``FITSDiff`` to allow ignoring HDUs by
NAME when diffing two FITS files [#7538]
* Optionally allow writing masked columns to FITS with the mask explicitly
specified as a separate column instead of using the FITS standard of
certain embedded null values (``NaN`` for float, ``TNULL`` for integers).
This can be used to work around limitations in the FITS standard. [#7481]
* All time coordinates can now be written to and read from FITS binary tables,
including those with vectorized locations. [#7430]
* The ``fitsheader`` command line tool now supports a ``dfits+fitsort`` mode,
and the dotted notation for keywords (e.g. ``ESO.INS.ID``). [#7240]
* Fall back to reading arrays using mode='denywrite' if mode='readonly' fails
when using memory-mapping. This solves cases on some platforms when the
available address space was less than the file size (even when using memory
mapping). [#7926]
> astropy.modeling
* Add a ``Multiply`` model which preserves unit through evaluate, unlike
``Scale`` which is dimensionless. [#7210]
* Add a ``uses_quantity`` property to ``Model`` which allows introspection of if
the ``Model`` can accept ``Quantity`` objects. [#7417]
* Add a ``separability_matrix`` function which returns the correlation matrix
of inputs and outputs. [#7803]
* Fixed compatibility of ``JointFitter`` with the latest version of Numpy. [#7984]
* Add ``prior`` and ``posterior`` constraints to modeling parameters. These are
not used by any current fitters, but are provided to allow user code to
experiment with Bayesian fitters. [#7558]
> astropy.nddata
* ``NDUncertainty`` objects now have a ``quantity`` attribute for simple
conversion to quantities. [#7704]
* Add a ``bitmask`` module that provides functions for manipulating bitmasks
and data quality (DQ) arrays. [#7944]
> astropy.stats
* Add an ``astropy.stats.bls`` module with an implementation of the "box least
squares" periodogram that is commonly used for discovering transiting
exoplanets and eclipsing binaries. [#7391]
> astropy.table
* Added support for full use of ``Time`` mixin column for join, hstack, and
vstack table operations. [#6888]
* Added a new table index engine, ``SCEngine``, based on the Sorted Containers
package. [#7574]
* Add a new keyword argument ``serialize_method`` to ``Table.write`` to
control how ``Time`` and ``MaskedColumn`` columns are written. [#7481]
* Allow mixin columns to be used in table ``group`` and ``unique``
functions. This applies to both the key columns and the other data
columns. [#7712]
* Added support for stacking ``Column``, mixin column (e.g. ``Quantity``,
``Time``) or column-like objects. [#7674]
* Added support for inserting a row into a Table that has ``Time`` or
``TimeDelta`` column(s). [#7897]
> astropy.tests
* Added an option ``--readonly`` to the test command to change the
permissions on the temporary installation location to read-only. [#7598]
> astropy.time
* Allow array-valued ``Time`` object to be modified in place. [#6028]
* Added support for missing values (masking) to the ``Time`` class. [#6028]
* Added supper for a 'local' time scale (for free-running clocks, etc.),
and round-tripping to the corresponding FITS time scale. [#7122]
* Added `datetime.timedelta` format class for ``TimeDelta``. [#7441]
* Added ``strftime`` and ``strptime`` methods to ``Time`` class.
These methods are similar to those in the Python standard library
`time` package and provide flexible input and output formatting. [#7323]
* Added ``datetime64`` format to the ``Time`` class to support working with
``numpy.datetime64`` dtype arrays. [#7361]
* Add fractional second support for ``strftime`` and ``strptime`` methods
of ``Time`` class. [#7705]
* Added an ``insert`` method to allow inserting one or more values into a
``Time`` or ``TimeDelta`` object. [#7897]
* Remove timescale from string version of FITS format time string.
The timescale is not part of the FITS standard and should not be included.
This change may cause some compatibility issues for code that relies on
round-tripping a FITS format string with a timescale. Strings generated
from previous versions of this package are still understood but a
DeprecationWarning will be issued. [#7870]
> astropy.uncertainty
* This sub-package was added as a "preview" (i.e. API unstable), containing
the ``Distribution`` class and associated convenience functions. [#6945]
> astropy.units
* Add complex numbers support for ``Quantity._repr_latex_``. [#7676]
* Add ``thermodynamic_temperature`` equivalency to convert between
Jy/beam and "thermodynamic temperature" for cosmology. [#7054]
* Add millibar unit. [#7863]
* Add maggy and nanomaggy unit, as well as associated ``zero_point_flux``
equivalency. [#7891]
* ``AB`` and ``ST`` are now enabled by default, and have alternate names
``ABflux`` and ``STflux``. [#7891]
* Added ``littleh`` unit and associated ``with_H0`` equivalency. [#7970]
> astropy.visualization
* Added ``imshow_norm`` function, which combines imshow and creation of a
``ImageNormalize`` object. [#7785]
> astropy.visualization.wcsaxes
* Add support for setting ``set_separator(None)`` in WCSAxes to use default
separators. [#7570]
* Added two keyword argument options to ``CoordinateHelper.set_format_unit``:
``decimal`` can be used to specify whether to use decimal formatting for the
labels (by default this is False for degrees and hours and True otherwise),
and ``show_decimal_unit`` can be used to determine whether the units should be
shown for decimal labels. [#7318]
* Added documentation for ``transform=`` and ``coord_meta=``. [#7698]
* Allow ``coord_meta=`` to optionally include ``format_unit=``. [#7848]
* Add support for more rcParams related to the grid, ticks, and labels, and
should work with most built-in Matplotlib styles. [#7961]
* Improved rendering of outward-facing ticks. [#7961]
* Add support for ``tick_params`` (which is a standard Matplotlib
function/method) on both the ``WCSAxes`` class and the individual
``CoordinateHelper`` classes. Note that this is provided for compatibility
with Matplotlib syntax users may be familiar with, but it is not the
preferred way to change settings. Instead, methods such as ``set_ticks``
should be preferred. [#7969]
* Moved the argument ``exclude_overlapping`` from ``set_ticks`` to
``set_ticklabel``. [#7969]
* Added a ``pad=`` argument to ``set_ticklabel`` to provide a way to control
the padding between ticks and tick labels. [#7969]
* Added support for setting the tick direction in ``set_ticks`` using the
``direction=`` keyword argument. [#7969]
> astropy.wcs
* Map ITRS frames to terrestrial WCS coordinates. This will make it possible to
use WCSAxes to make figures that combine both celestial and terrestrial
features. An example is plotting the coordinates of an astronomical transient
over an all- sky satellite image to illustrate the position relative to the
Earth at the time of the event. The ITRS frame is identified with WCSs that
use the ``TLON-`` and ``TLAT-`` coordinate types. There are several examples
of WCSs where this syntax is used to describe terrestrial coordinate systems:
Section 7.4.1 of `WCS in FITS "Paper II" <http://adsabs.harvard.edu/abs/2002A%26A...395.1077C>`_
and the `WCSTools documentation <http://tdc-www.harvard.edu/software/wcstools/wcstools.multiwcs.html>`_.
[#6990]
* Added the abstract base class for the low-level WCS API described in APE 14
(https://doi.org/10.5281/zenodo.1188875). [#7325]
* Add ``WCS.contains()`` function to check if the WCS footprint contains a given sky coordinate. [#7273]
* Added the abstract base class for the high-level WCS API described in APE 14
(https://doi.org/10.5281/zenodo.1188875). [#7325]
* Added the high-level wrapper class for low-level WCS objects as described in
APE 14 (https://doi.org/10.5281/zenodo.1188875). [#7326]
* Added a new property ``WCS.has_distortion``. [#7326]
* Deprecated ``_naxis1`` and ``_naxis2`` in favor of ``pixel_shape``. [#7973]
* Added compatibility to wcslib version 6. [#8093]
+ API Changes
> astropy.convolution
* ``kernel`` can now be a tuple. [#7561]
* Not technically an API changes, however, the docstring indicated that ``boundary=None``
was the default when actually it is ``boundary='fill'``. The docstring has been corrected,
however, someone may interpret this as an API change not realizing that nothing has actually
changed. [#7293]
* ``interpolate_replace_nans()`` can no longer accept the keyword argument
``preserve_nan``. It is explicitly set to ``False``. [#8088]
> astropy.coordinates
* Fixed ``astropy.coordinates.concatenate`` to include velocity data in the
concatenation. [#7922]
* Changed the name of the single argument to ``Frame.realize_frame()`` from the
(incorrect) ``representation_type`` to ``data``. [#7923]
* Negative parallaxes passed to ``Distance()`` now raise an error by default
(``allow_negative=False``), or are converted to NaN values with a warning
(``allow_negative=True``). [#7988]
* Negating a ``SphericalRepresentation`` object now changes the angular
coordinates (by rotating 180º) instead of negating the distance. [#7988]
* Creation of new frames now generally creates copies of frame attributes,
rather than inconsistently either copying or making references. [#8204]
* The frame class method ``is_equivalent_frame`` now checks for equality of
components to determine if a frame is the same when it has frame attributes
that are representations, rather than checking if they are the same
object. [#8218]
> astropy.io.ascii
* If a fast reader is explicitly selected (e.g. ``fast_reader='force'``) and
options which are incompatible with the fast reader are provided
(e.g. ``quotechar='##'``) then now a ``ParameterError`` exception will be
raised. [#5578]
* The fast readers will now raise ``InconsistentTableError`` instead of
``CParserError`` if the number of data and header columns do not match.
[#5578]
* Changed a number of ``ValueError`` exceptions to ``InconsistentTableError``
in places where the exception is related to parsing a table which is
inconsistent with the specified table format. Note that
``InconsistentTableError`` inherits from ``ValueError`` so no user code
changes are required. [#7425]
> astropy.io.fits
* The ``fits.table_to_hdu()`` function will translate any column ``format``
attributes to a TDISPn format string, if possible, and store it as a TDISPn
keyword in the ``HDU`` header. [#7226]
> astropy.modeling
* Change the order of the return values from ``FittingWithOutlierRemoval``,
such that ``fitted_model`` comes first, for consistency with other fitters.
For the second value, return only a boolean outlier ``mask``, instead of the
previous ``MaskedArray`` (which included a copy of the input data that was
both redundant and inadvertently corrupted at masked points). Return a
consistent type for the second value when ``niter=0``. [#7407]
* Set the minimum value for the ``bolometric_flux`` parameter of the
``BlackBody1D`` model to zero. [#7045]
> astropy.nddata
* Add two new uncertainty classes, ``astropy.nddata.VarianceUncertainty`` and
``astropy.nddata.InverseVariance``. [#6971]
> astropy.stats
* String values can now be used for the ``cenfunc`` and ``stdfunc``
keywords in the ``SigmaClip`` class and ``sigma_clip`` and
``sigma_clipped_stats`` functions. [#7478]
* The ``SigmaClip`` class and ``sigma_clip`` and
``sigma_clipped_stats`` functions now have a ``masked`` keyword,
which can be used to return either a masked array (default) or an
ndarray with the min/max values. [#7478]
* The ``iters`` keyword has been renamed (and deprecated) to
``maxiters`` in the ``SigmaClip`` class and ``sigma_clip`` and
``sigma_clipped_stats`` functions. [#7478]
> astropy.table
* ``Table.read()`` on a FITS binary table file will convert any TDISPn header
keywords to a Python formatting string when possible, and store it in the
column ``format`` attribute. [#7226]
* No values provided to stack will now raise ``ValueError`` rather than
``TypeError``. [#7674]
> astropy.tests
* ``from astropy.tests.helper import *`` no longer includes
``quantity_allclose``. However,
``from astropy.tests.helper import quantity_allclose`` would still work.
[#7381]
* ``warnings_to_ignore_by_pyver`` option in
``enable_deprecations_as_exceptions()`` now takes ``None`` as key.
Any deprecation message that is mapped to ``None`` will be ignored
regardless of the Python version. [#7790]
> astropy.time
* Added the ability to use ``local`` as time scale in ``Time`` and
``TimeDelta``. [#6487]
* Comparisons, addition, and subtraction of ``Time`` instances with non-time
instances will now return ``NotImplemented`` rather than raise the
``Time``-specific ``OperandTypeError``. This will generally lead to a
regular ``TypeError``. As a result, ``OperandTypeError`` now only occurs if
the operation is between ``Time`` instances of incompatible type or scale.
[#7584]
> astropy.units
* In ``UnitBase.compose()``, if a sequence (list|tuple) is passed in to
``units``, the default for ``include_prefix_units`` is set to
`True`, so that no units get ignored. [#6957]
* Negative parallaxes are now converted to NaN values when using the
``parallax`` equivalency. [#7988]
> astropy.utils
* ``InheritDocstrings`` now also works on class properties. [#7166]
* ``diff_values()``, ``report_diff_values()``, and ``where_not_allclose()``
utility functions are moved from ``astropy.io.fits.diff``. [#7444]
* ``invalidate_caches()`` has been removed from the
``astropy.utils.compat`` namespace, use it directly from ``importlib``. [#7872]
> astropy.visualization
* In ``ImageNormalize``, the default for ``clip`` is set to ``True``. [#7800]
* Changed ``AsymmetricPercentileInterval`` and ``MinMaxInterval`` to
ignore NaN values in arrays. [#7360]
* Automatically default to using ``grid_type='contours'`` in WCSAxes when using
a custom ``Transform`` object if the transform has no inverse. [#7847]
+ Performance Improvements
* Reduced import time by more cautious use of the standard library. [#7647]
> astropy.convolution
* Major performance overhaul to ``convolve()``. [#7293]
* ``convolve()``: Boundaries ``fill``, ``extend``, and ``wrap`` now use a single
implementation that pads the image with the correct boundary values before convolving.
The runtimes of these three were significantly skewed. They now have
equivalent runtimes that are also faster than before due to performant contiguous
memory access. However, this does increase the memory footprint as an entire
new image array is required plus that needed for the padded region.[#7293]
* ``convolve()``: Core computation ported from Cython to C. Several optimization
techniques have been implemented to achieve performance gains, e.g. compiler
hoisting, and vectorization, etc. Compiler optimization level ``-O2`` required for
hoisting and ``-O3`` for vectorization. [#7293]
* ``convolve()``: ``nan_treatment=‘interpolate’`` was slow to compute irrespective of
whether any NaN values exist within the array. The input array is now
checked for NaN values and interpolation is disabled if non are found. This is a
significant performance boost for arrays without NaN values. [#7293]
> astropy.coordinates
* Sped up creating SkyCoord objects by a factor of ~2 in some cases. [#7615]
* Sped up getting xyz vectors from ``CartesianRepresentation`` (which
is used a lot internally). [#7638]
* Sped up transformations and some representation methods by replacing
python code with (compiled) ``erfa`` ufuncs. [#7639]
* Sped up adding differential (velocity) data to representations by a factor of
~20, which improves the speed of frame and SkyCoord initialization. [#7924]
* Refactored ``SkyCoord`` initializer to improve performance and code clarity.
[#7958]
* Sped up initialization of ``Longitude`` by ~40%. [#7616]
> astropy.stats
* The ``SigmaClip`` class and ``sigma_clip`` and
``sigma_clipped_stats`` functions are now significantly faster. [#7478]
* A Cython implementation for `astropy.stats.kuiper_two` and a vectorized
implementation for `astropy.stats.kuiper_false_positive_probability` have
been added, speeding up both functions. [#8104]
> astropy.units
* Sped up creating new composite units, and raising units to some power
[#7549, #7649]
* Sped up Unit.to when target unit is the same as the original unit.
[#7643]
* Lazy-load ``scipy.special`` to shorten ``astropy.units`` import time. [#7636]
> astropy.visualization
* Significantly sped up drawing of contours in WCSAxes. [#7568]
+ Bug Fixes
> astropy.convolution
* Fixed bug in ``convolve_fft`` where masked input was copied with
``numpy.asarray`` instead of ``numpy.asanyarray``.
``numpy.asarray`` removes the mask subclass causing
``numpy.ma.ismasked(input)`` to fail, causing ``convolve_fft``
to ignore all masked input. [#8137]
* Remove function side-effects of input data from ``convolve_fft``.
It was possible for input data to remain modified if particular exceptions
were raised. [#8152]
> astropy.coordinates
* ``EarthLocation.of_address`` now uses the OpenStreetMap geocoding API by
default to retrieve coordinates, with the Google API (which now requires an
API key) as an option. [#7918]
* Fixed a bug that caused frame objects with NaN distances to have NaN sky
positions, even if valid sky coordinates were specified. [#7988]
* Fixed ``represent_as()`` to not round-trip through cartesian if the same
representation class as the instance is passed in. [#7988]
> astropy.io.ascii
* Fixed a problem when ``guess=True`` that ``fast_reader`` options
could be dropped after the first fast reader class was tried. [#5578]
* Units in CDS-formatted tables are now parsed correctly by the units
module. [#7348]
> astropy.io.misc
* Fixed bug when writing a table with masked columns to HDF5. Previously
the mask was being silently dropped. If the ``serialize_meta`` option is
enabled the data mask will now be written as an additional column and the
masked columns will round-trip correctly. [#7481]
* Fixed a bug where writing to HDF5 failed for for tables with columns of
unicode strings. Now those columns are first encoded to UTF-8 and
written as byte strings. [#7024, #8017]
* Fixed a bug with serializing the bounding_box of models initialized
with ``Quantities`` . [#8052]
> astropy.io.fits
* Added support for ``copy.copy`` and ``copy.deepcopy`` for ``HDUList``. [#7218]
* Override ``HDUList.copy()`` to return a shallow HDUList instance. [#7218]
> astropy.modeling
* Fix behaviour of certain models with units, by making certain unit-related
attributes readonly. [#7210]
* Fixed an issue with validating a ``bounding_box`` whose items are
``Quantities``. [#8052]
* Fix ``Moffat1D`` and ``Moffat2D`` derivatives. [#8108]
> astropy.nddata
* Fixed rounding behavior in ``overlap_slices`` for even-sized small
arrays. [#7859]
* Added support for pickling ``NDData`` instances that have an uncertainty.
[#7383]
> astropy.stats
* Fix errors in ``kuiper_false_positive_probability``. [#7975]
> astropy.tests
* Fixing bug that prevented to run the doctests on only a single rst documentation
file rather than all of them. [#8055]
> astropy.time
* Fix a bug when setting a ``TimeDelta`` array item with plain float value(s).
This was always interpreted as a JD (day) value regardless of the
``TimeDelta`` format. [#7990]
> astropy.units
* To simplify fast creation of ``Quantity`` instances from arrays, one can now
write ``array << unit`` (equivalent to ``Quantity(array, unit, copy=False)``).
If ``array`` is already a ``Quantity``, this will convert the quantity to the
requested units; in-place conversion can be done with ``quantity <<= unit``.
[#7734]
> astropy.utils
* Fixed a bug due to which ``report_diff_values()`` was reporting incorrect
number of differences when comparing two ``numpy.ndarray``. [#7470]
* The download progress bar is now only displayed in terminals, to avoid
polluting piped output. [#7577]
* Ignore URL mirror caching when there is no internet. [#8163]
> astropy.visualization
* Right ascension coordinates are now shown in hours by default, and the
``set_format_unit`` method on ``CoordinateHelper`` now works correctly
with angle coordinates. [#7215]
+ Other Changes and Additions
* The documentation build now uses the Sphinx configuration from sphinx-astropy
rather than from astropy-helpers. [#7139]
* Versions of Numpy <1.13 are no longer supported. [#7058]
* Running tests now suppresses the output of the installation stage by default,
to allow easier viewing of the test results. To re-enable the output as
before, use ``python setup.py test --verbose-install``. [#7512]
* The ERFA functions are now wrapped in ufuncs instead of custom C code,
leading to some speed improvements, and setting the stage for allowing
overrides with ``__array_ufunc__``. [#7502]
* Updated the bundled CFITSIO library to 3.450. See
``cextern/cfitsio/docs/changes.txt`` for additional information. [#8014]
* The ``representation`` keywords in coordinate frames are now deprecated in
favor of the ``representation_type`` keywords (which are less
ambiguously named). [#8119]
- Update to 3.0.5
* Update to 3.* is a large step, which contains these main
improvements:
- Full support for velocities in astropy.coordinates
- Support for position updates based on source motion for
SkyCoord objects
- Context managers for versioned constants
- Support for quantities in scipy special functions
- showtable command line script
- Lossless writing and reading mixin columns to HDF5 and
FITS
- Support for FITS time standard
- FITS table performance enhancements
- False alarm probabilities in astropy.stats.LombScargle
- Reading large ASCII files in chunks
- Astropy now only supports Python 3
- pytest plugins moved to external packages
Full changelog is available at http://docs.astropy.org/en/stable/changelog.html
OBS-URL: https://build.opensuse.org/request/show/663419
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-astropy?expand=0&rev=4
2019-01-21 10:47:14 +01:00
|
|
|
# /SECTION
|
|
|
|
# SECTION test requirements
|
2020-10-23 13:32:38 +02:00
|
|
|
# We need the compiled package for testing
|
Accepting request 840965 from home:bnavigator:branches:devel:languages:python:numeric
- Update to 4.0.2
New Features
* astropy.utils
astropy.utils.data.download_file now supports FTPS/FTP over
TLS. [#9964]
astropy.utils.data now uses a lock-free mechanism for caching.
This new mechanism uses a new cache layout and so ignores
caches created using earlier mechanisms (which were causing
lockups on clusters). The two cache formats can coexist but do
not share any files. [#10437, #10683]
astropy.utils.data now ignores the config item
astropy.utils.data.conf.download_cache_lock_attempts since no
locking is done. [#10437, #10683]
astropy.utils.data.download_file and related functions now
interpret the parameter or config file setting timeout=0 to
mean they should make no attempt to download files. [#10437,
#10683]
astropy.utils.import_file_to_cache now accepts a keyword-only
argument replace, defaulting to True, to determine whether it
should replace existing files in the cache, in a way as close
to atomic as possible. [#10437, #10683]
astropy.utils.data.download_file and related functions now
treat http://example.com and http://example.com/ as equivalent.
[#10631]
* astropy.wcs
The new auxiliary WCS parameters added in WCSLIB 7.1 are now
exposed as the aux attribute of Wcsprm. [#10333]
Updated bundled version of WCSLIB to v7.3. [#10433]
Bug fixes
* astropy.config
Added an extra fallback to os.expanduser('~') when trying to
find the user home directory. [#10570]
* astropy.constants
Corrected definition of parsec to 648 000 / pi AU following IAU
2015 B2 [#10569]
* astropy.convolution
Fixed a bug where a float-typed integers in the argument
x_range of astropy.convolution.utils.discretize_oversample_1D
(and the 2D version as well) fails because it uses
numpy.linspace, which requires an int. [#10696]
* astropy.coordinates
Ensure that for size-1 array SkyCoord and coordinate frames the
attributes also properly become scalars when indexed with 0.
[#10113]
Fixed a bug where SkyCoord.separation() and
SkyCoord.separation_3d were not accepting a frame object.
[#10332]
Ensure that the lon values in SkyOffsetFrame are wrapped
correctly at 180 degree regardless of how the underlying data
is represented. [#10163]
Fixed an error in the obliquity of the ecliptic when
transforming to/from the *TrueEcliptic coordinate frames. The
error would primarily result in an inaccuracy in the ecliptic
latitude on the order of arcseconds. [#10129]
Fixed an error in the computation of the location of solar
system bodies where the Earth location of the observer was
ignored during the correction for light travel time. [#10292]
Ensure that coordinates with proper motion that are transformed
to other coordinate frames still can be represented properly.
[#10276]
Improve the error message given when trying to get a cartesian
representation for coordinates that have both proper motion and
radial velocity, but no distance. [#10276]
Fixed an error where SkyCoord.apply_space_motion would return
incorrect results when no distance is set and proper motion is
high. [#10296]
Make the parsing of angles thread-safe so that Angle can be
used in Python multithreading. [#10556]
Fixed reporting of EarthLocation.info which previously raised
an exception. [#10592]
* astropy.io.ascii
Fixed a bug with the C fast_reader not correctly parsing
newlines when delimiter was also set to \n or \r; ensured
consistent handling of input strings without newline
characters. [#9929]
* astropy.io.fits
Fix integer formats of TFORMn=Iw columns in ASCII tables to
correctly read values exceeding int32 - setting int16, int32 or
int64 according to w. [#9901]
Fix unclosed memory-mapped FITS files in FITSDiff when
difference found. [#10159]
Fix crash when reading an invalid table file. [#10171]
Fix duplication issue when setting a keyword ending with space.
[#10482]
Fix ResourceWarning with fits.writeto and pathlib.Path object.
[#10599]
Fix repr for commentary cards and strip spaces for commentary
keywords. [#10640]
Fix compilation of cfitsio with Xcode 12. [#10772]
Fix handling of 1-dimensional arrays with a single element in
BinTableHDU [#10768]
* astropy.io.misc
Fix id URL in baseframe-1.0.0 ASDF schema. [#10223]
Write keys to ASDF only if the value is present, to account for
a change in behavior in asdf 2.8. [#10674]
* astropy.io.registry
Fix Table.(read|write).help when reader or writer has no
docstring. [#10460]
* astropy.io.votable
Fixed parsing failure of VOTable with no fields. When detecting
a non-empty table with no fields, the following warning/
exception is issued: E25 "No FIELDs are defined; DATA section
will be ignored." [#10192]
* astropy.modeling
Fixed a problem with mapping input_units and return_units of a
CompoundModel to the units of the constituent models. [#10158]
Removed hard-coded names of inputs and outputs. [#10174]
Fixed a problem where slicing a CompoundModel by name will
crash if there fix_inputs operators are present. [#10224]
Removed a limitation of fitting of data with units with
compound models without units when the expression involves
operators other than addition and subtraction. [#10415]
Fixed a problem with fitting Linear1D and Planar2D in model
sets. [#10623]
Fixed reported module name of math_functions model classes.
[#10694]
Fixed reported module name of tabular model classes. [#10709]
Do not create new math_functions models for ufuncs that are
only aliases (divide and mod). [#10697]
Fix calculation of the Moffat2D derivative with respect to
gamma. [#10784]
* astropy.stats
Fixed an API regression where SigmaClip.__call__ would convert
masked elements to nan and upcast the dtype to float64 in its
output MaskedArray when using the axis parameter along with the
defaults masked=True and copy=True. [#10610]
Fixed an issue where fully masked MaskedArray input to
sigma_clipped_stats gave incorrect results. [#10099]
Fixed an issue where sigma_clip and SigmaClip.__call__ would
return a masked array instead of a ndarray when masked=False
and the input was a full-masked MaskedArray. [#10099]
Fixed bug with funcs.poisson_conf_interval where an integer for
N with interval='kraft-burrows-nousek' would throw an error
with mpmath backend. [#10427]
Fixed bug in funcs.poisson_conf_interval with interval='kraft-
burrows-nousek' where certain combinations of source and
background count numbers led to ValueError due to the choice of
starting value for numerical optimization. [#10618]
* astropy.table
Fixed a bug when writing a table with mixin columns to FITS,
ECSV or HDF5. If one of the data attributes of the mixin (e.g.
skycoord.ra) had the same name as one of the table column names
(ra), the column (ra) would be dropped when reading the table
back. [#10222]
Fixed a bug when sorting an indexed table on the indexed column
after first sorting on another column. [#10103]
Fixed a bug in table argsort when called with reverse=True for
an indexed table. [#10103]
Fixed a performance regression introduced in #9048 when
initializing a table from Python lists. Also fixed incorrect
behavior (for data types other than float) when those lists
contain np.ma.masked elements to indicate masked data. [#10636]
Avoid modifying .meta when serializing columns to FITS.
[#10485]
Avoid crash when reading a FITS table that contains mixin info
and PyYAML is missing. [#10485]
* astropy.time
Ensure that for size-1 array Time, the location also properly
becomes a scalar when indexed with 0. [#10113]
* astropy.units
Refined test_parallax to resolve difference between 2012 and
2015 definitions. [#10569]
* astropy.utils
The default IERS server has been updated to use the FTPS server
hosted by CDDIS. [#9964]
Fixed memory allocation on 64-bit systems within xml.iterparse
[#10076]
Fix case where None could be used in a numerical computation.
[#10126]
* astropy.visualization
Fixed a bug where the ImageNormalize clip keyword was ignored
when used with calling the object on data. [#10098]
Fixed a bug where axes.xlabel/axes.ylabel where not correctly
set nor returned on an EllipticalFrame class WCSAxes plot.
[#10446]
* astropy.wcs
Handled WCS 360 -> 0 deg crossover in fit_wcs_from_points
[#10155]
Do not issue DATREF warning when MJDREF has default value.
[#10440]
Fixed a bug due to which naxis argument was ignored if header
was supplied during the initialization of a WCS object.
[#10532]
Other Changes and Additions
* Improved the speed of sorting a large Table on a single column
by a factor of around 5. [#10103]
* Ensure that astropy can be used inside Application bundles
built with pyinstaller. [#8795]
* Updated the bundled CFITSIO library to 3.49. See cextern/
cfitsio/docs/changes.txt for additional information. [#10256,
#10665]
* extract_array raises a ValueError if the data type of the input
array is inconsistent with the fill_value. [#10602]
- Drop merged PR patches
* astropy-pr10433-wcslib73-tests.patch gh#astropy/astropy#10433
* astropy-pr10440-wcs-datfix.patch gh#astropy/astropy#10440
- Skip test_compound_fitting_with_units gh#astropy/astropy#10675
OBS-URL: https://build.opensuse.org/request/show/840965
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-astropy?expand=0&rev=34
2020-10-11 12:33:44 +02:00
|
|
|
BuildRequires: %{python_module astropy = %{version}}
|
2021-08-05 21:04:41 +02:00
|
|
|
BuildRequires: %{python_module ipython >= 4.2}
|
Accepting request 795557 from home:bnavigator:branches:devel:languages:python:numeric
- Update to 4.0.1.post1
* astropy.config
[gh#astropy/astropy#9975]
Fixed a bug where importing a development version of a package that
uses ``astropy`` configuration system can result in a
``~/.astropy/config/package..cfg`` file.
* astropy.coordinates
[gh#astropy/astropy#9815]
Fixed a bug where a vestigal trace of a frame class could persist in the
transformation graph even after the removal of all transformations involving
that frame class.
[gh#astropy/astropy#9815]
Fixed a bug with ``TransformGraph.remove_transform()`` when the "from" and
"to" frame classes are not explicitly specified.
[gh#astropy/astropy#9900]
Read-only longitudes can now be passed in to ``EarthLocation`` even if
they include angles outside of the range of -180 to 180 degrees.
[gh#astropy/astropy#9980]
```SkyCoord.radial_velocity_correction``` no longer raises an Exception
when space motion information is present on the SkyCoord.
* astropy.io
[gh#astropy/astropy#9866]
Fixed a bug that prevented the unified I/O infrastructure from working with
datasets that are represented by directories rather than files.
* astropy.io.ascii
[gh#astropy/astropy#9918]
Fixed a bug in the ``fast_reader`` C parsers incorrectly returning entries
of isolated positive/negative signs as ``float`` instead of ``str``.
[gh#astropy/astropy#9923]
Fixed a segmentation fault in the ``fast_reader`` C parsers when parsing an
invalid file with ``guess=True`` and the file contains inconsistent column
numbers in combination with a quoted field; e.g., ``"1 2\n 3 4 '5'"``.
[gh#astropy/astropy#9933]
Magnitude, decibel, and dex can now be stored in ``ecsv`` files.
* astropy.io.misc
[gh#astropy/astropy#9933]
Magnitude, decibel, and dex can now be stored in ``hdf5`` files.
[gh#astropy/astropy#9956, gh#astropy/astropy#9961]
Fixed serialization of polynomial models to include non default values of
domain and window values.
[gh#astropy/astropy#9950]
Fixed a bug which affected overwriting tables within ``hdf5`` files.
Overwriting an existing path with associated column meta data now also
overwrites the meta data associated with the table.
[gh#astropy/astropy#9983]
Fixed serialization of Time objects with location under time-1.0.0
ASDF schema.
* astropy.io.fits
[gh#astropy/astropy#9711, gh#astropy/astropy#9934]
Fix regression with ``GroupsHDU`` which needs to modify the header to handle
invalid headers, and fix accesing ``.data`` for empty HDU.
[gh#astropy/astropy#9711]
Fix ``fitsdiff`` when its arguments are directories that contain other
directories.
[gh#astropy/astropy#9958]
Fix writing noncontiguous data to a compressed HDU.
[gh#astropy/astropy#9978]
Added verification of ``disp`` (``TDISP``) keyword to ``fits.Column`` and
extended tests for ``TFORM`` and ``TDISP`` validation.
[gh#astropy/astropy#10012]
Fix checksum verification to process all HDUs instead of only the first one
because of the lazy loading feature.
[gh#astropy/astropy#10030]
Allow passing ``output_verify`` to ``.close`` when using the context manager.
[gh#astropy/astropy#10041]
Prevent instantiation of ``PrimaryHDU`` and ``ImageHDU`` with a scalar.
[gh#astropy/astropy#10069]
Fix column access by attribute with FITS_rec: columns with scaling or columns
from ASCII tables where not properly converted when accessed by attribute
name.
* astropy.io.misc
[gh#astropy/astropy#9933]
Magnitude, decibel, and dex can now be stored in ``hdf5`` files.
[gh#astropy/astropy#9956, gh#astropy/astropy#9961]
Fixed serialization of polynomial models to include non default values of
domain and window values.
[gh#astropy/astropy#9950]
Fixed a bug which affected overwriting tables within ``hdf5`` files.
Overwriting an existing path with associated column meta data now also
overwrites the meta data associated with the table.
[gh#astropy/astropy#9983]
Fixed serialization of Time objects with location under time-1.0.0
ASDF schema.
* astropy.modeling
[gh#astropy/astropy#9987]
Fixed a bug in setting default values of parameters of orthonormal
polynomials when constructing a model set.
* astropy.table
[gh#astropy/astropy#9839]
Fixed bug in ``Table.reverse`` for tables that contain non-mutable mixin columns
(like ``SkyCoord``) for which in-place item update is not allowed.
[gh#astropy/astropy#9933]
Tables containing Magnitude, decibel, and dex columns can now be saved to
``ecsv`` files.
[gh#astropy/astropy#10027]
Fixed bug where adding or inserting a row fails on a table with an index
defined on a column that is not the first one.
[gh#astropy/astropy#10068]
Ensured that ``table.show_in_browser`` also worked for mixin columns like
``Time`` and ``SkyCoord``.
* astropy.time
[gh#astropy/astropy#9679]
Fix inaccuracy when converting between TimeDelta and datetime.timedelta.
[gh#astropy/astropy#9812]
Fixed exception when changing ``format`` in the case when ``out_subfmt`` is
defined and is incompatible with the new format.
[gh#astropy/astropy#9812]
Fixed exceptions in ``Time.to_value()``: when supplying any ``subfmt`` argument
for string-based formats like 'iso', and for ``subfmt='long'`` for the formats
'byear', 'jyear', and 'decimalyear'.
[gh#astropy/astropy#9969]
Fixed bug where the location attribute was lost when creating a new ``Time``
object from an existing ``Time`` or list of ``Time`` objects.
[gh#astropy/astropy#10034]
Fixed a bug where an exception occurred when creating a ``Time`` object
if the ``val1`` argument was a regular double and the ``val2`` argument
was a ``longdouble``.
* astropy.timeseries
[gh#astropy/astropy#10013]
Fixed issue with reference time for the ``transit_time`` parameter returned by
the ``BoxLeastSquares`` periodogram. Now, the ``transit_time`` will be within
the range of the input data and arbitrary time offsets/zero points no longer
affect results.
* astropy.units
[gh#astropy/astropy#9948]
Fix for ``quantity_input`` annotation raising an exception on iterable
types that don't define a general ``__contains__`` for checking if ``None``
is contained (e.g. Enum as of python3.8), by instead checking for instance of
Sequence.
[gh#astropy/astropy#10066]
Fix for ``u.Quantity`` not taking into account ``ndmin`` if constructed from
another ``u.Quantity`` instance with different but convertible unit
* astropy.utils
[gh#astropy/astropy#9981]
Fixed ``deprecated_renamed_argument`` not passing in user value to
deprecated keyword when the keyword has no new name.
[gh#astropy/astropy#9985]
Fixed ``deprecated_renamed_argument`` not issuing a deprecation warning when
deprecated keyword without new name is passed in as positional argument.
[gh#astropy/astropy#10007]
Fixed detection of read-only filesystems in the caching code.
* astropy.visualization
[gh#astropy/astropy#9848]
Fixed bug from matplotlib >=3.1 where an empty Quantity array is
sent for unit conversion as an empty list.
[gh#astropy/astropy#9913]
Fix bug in ``ZScaleInterval`` to return the array minimum and
maximum when there are less then ``min_npixels`` in the input array.
[gh#astropy/astropy#8004, gh#astropy/astropy#9991]
Fix a bug in simplifying axis labels that affected non-rectangular frames.
* Increase minimum asdf version to 2.5.2.
[gh#astropy/astropy#9996, gh#astropy/astropy#9819]
* Updated wcslib to v7.2. [gh#astropy/astropy#10021]
- updated test requirements and recommends
- run pytest directly
OBS-URL: https://build.opensuse.org/request/show/795557
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-astropy?expand=0&rev=23
2020-04-20 19:58:35 +02:00
|
|
|
BuildRequires: %{python_module objgraph}
|
2021-08-05 21:04:41 +02:00
|
|
|
BuildRequires: %{python_module packaging}
|
Accepting request 663419 from devel:languages:python:numeric
- Use pytest-astropy since it is in Factory now.
- Update to version 3.1
+ New Features
> astropy.convolution
* ``convolve`` now accepts any array-like input, not just ``numpy.ndarray`` or
lists. [#7303]
* ``convolve`` Now raises AstropyUserWarning if nan_treatment='interpolate' and
preserve_nan=False and NaN values are present post convolution. [#8088]
> astropy.coordinates
* The ``SkyCoord.from_name`` constructor now has the ability to create
coordinate objects by parsing object catalogue names that have embedded
J-coordinates. [#7830]
* The new function ``make_transform_graph_docs`` can be used to create a
docstring graph from a custom ``TransformGraph`` object. [#7135]
* ``KDTree`` for catalog matching is now built with sliding midpoint rule
rather than standard. In code, this means setting ``compact_nodes=False``
and ``balanced_tree=False`` in ``cKDTree``. The sliding midpoint rule is much
more suitable for catalog matching, and results in 1000x speedup in some
cases. [#7324]
* Additional information about a site loaded from the Astropy sites registry is
now available in ``EarthLocation.info.meta``. [#7857]
* Added a ``concatenate_representations`` function to combine coordinate
representation data and any associated differentials. [#7922]
* ``BaseCoordinateFrame`` will now check for a method named
``_astropy_repr_in_frame`` when constructing the string forms of attributes.
Allowing any class to control how ``BaseCoordinateFrame`` represents it when
it is an attribute of a frame. [#7745]
* Some rarely-changed attributes of frame classes are now cached, resulting in
speedups (up to 50% in some cases) when creating new scalar frame or
``SkyCoord`` objects. [#7949, #5952]
* Added a ``directional_offset_by`` method to ``SkyCoord`` that computes a new
coordinate given a coordinate, position angle, and angular separation [#5727]
> astropy.cosmology
* The default cosmology has been changed from ``WMAP9`` to ``Planck15``. [#8123]
* Distance calculations with ``LambaCDM`` with no radiation (T_CMB0=0)
are now 20x faster by using elliptic integrals for non-flat cases. [#7155]
* Distance calculations with ``FlatLambaCDM`` with no radiation (T_CMB0=0)
are now 20x faster by using the hypergeometric function solution
for this special case. [#7087]
* Age calculations with ``FlatLambdaCDM`` with no radiation (Tcmb0=0)
are now 1000x faster by using analytic solutions instead of integrating.
[#7117]
> astropy.io.ascii
* Latex reader now ignores ``\toprule``, ``\midrule``, and ``\bottomrule``
commands. [#7349]
* Added the RST (Restructured-text) table format and the fast version of the
RDB reader to the set of formats that are guessed by default. [#5578]
* The read trace (used primarily for debugging) now includes guess argument
sets that were skipped entirely e.g. for not supporting user-supplied kwargs.
All guesses thus removed from ``filtered_guess_kwargs`` are now listed as
"Disabled" at the beginning of the trace. [#5578]
* Emit a warning when reading an ECSV file without specifying the ``format``
and without PyYAML installed. Previously this silently fell through to
parsing as a basic format file and the file metadata was lost. [#7580]
* Optionally allow writing masked columns to ECSV with the mask explicitly
specified as a separate column instead of marking masked elements with ""
(empty string). This allows handling the case of a masked string column
with "" data rows. [#7481]
> astropy.io.misc
* Added support for saving all representation classes and many coordinate
frames to the asdf format. [#7079]
* Added support for saving models with units to the asdf format. [#7237]
* Added a new ``character_as_bytes`` keyword to the HDF5 Table reading
function to control whether byte string columns in the HDF5 file
are left as bytes or converted to unicode. The default is to read
as bytes (``character_as_bytes=True``). [#7024, #8017]
> astropy.io.fits
* ``HDUList.pop()`` now accepts string and tuple extension name
specifications. [#7236]
* Add an ``ignore_hdus`` keyword to ``FITSDiff`` to allow ignoring HDUs by
NAME when diffing two FITS files [#7538]
* Optionally allow writing masked columns to FITS with the mask explicitly
specified as a separate column instead of using the FITS standard of
certain embedded null values (``NaN`` for float, ``TNULL`` for integers).
This can be used to work around limitations in the FITS standard. [#7481]
* All time coordinates can now be written to and read from FITS binary tables,
including those with vectorized locations. [#7430]
* The ``fitsheader`` command line tool now supports a ``dfits+fitsort`` mode,
and the dotted notation for keywords (e.g. ``ESO.INS.ID``). [#7240]
* Fall back to reading arrays using mode='denywrite' if mode='readonly' fails
when using memory-mapping. This solves cases on some platforms when the
available address space was less than the file size (even when using memory
mapping). [#7926]
> astropy.modeling
* Add a ``Multiply`` model which preserves unit through evaluate, unlike
``Scale`` which is dimensionless. [#7210]
* Add a ``uses_quantity`` property to ``Model`` which allows introspection of if
the ``Model`` can accept ``Quantity`` objects. [#7417]
* Add a ``separability_matrix`` function which returns the correlation matrix
of inputs and outputs. [#7803]
* Fixed compatibility of ``JointFitter`` with the latest version of Numpy. [#7984]
* Add ``prior`` and ``posterior`` constraints to modeling parameters. These are
not used by any current fitters, but are provided to allow user code to
experiment with Bayesian fitters. [#7558]
> astropy.nddata
* ``NDUncertainty`` objects now have a ``quantity`` attribute for simple
conversion to quantities. [#7704]
* Add a ``bitmask`` module that provides functions for manipulating bitmasks
and data quality (DQ) arrays. [#7944]
> astropy.stats
* Add an ``astropy.stats.bls`` module with an implementation of the "box least
squares" periodogram that is commonly used for discovering transiting
exoplanets and eclipsing binaries. [#7391]
> astropy.table
* Added support for full use of ``Time`` mixin column for join, hstack, and
vstack table operations. [#6888]
* Added a new table index engine, ``SCEngine``, based on the Sorted Containers
package. [#7574]
* Add a new keyword argument ``serialize_method`` to ``Table.write`` to
control how ``Time`` and ``MaskedColumn`` columns are written. [#7481]
* Allow mixin columns to be used in table ``group`` and ``unique``
functions. This applies to both the key columns and the other data
columns. [#7712]
* Added support for stacking ``Column``, mixin column (e.g. ``Quantity``,
``Time``) or column-like objects. [#7674]
* Added support for inserting a row into a Table that has ``Time`` or
``TimeDelta`` column(s). [#7897]
> astropy.tests
* Added an option ``--readonly`` to the test command to change the
permissions on the temporary installation location to read-only. [#7598]
> astropy.time
* Allow array-valued ``Time`` object to be modified in place. [#6028]
* Added support for missing values (masking) to the ``Time`` class. [#6028]
* Added supper for a 'local' time scale (for free-running clocks, etc.),
and round-tripping to the corresponding FITS time scale. [#7122]
* Added `datetime.timedelta` format class for ``TimeDelta``. [#7441]
* Added ``strftime`` and ``strptime`` methods to ``Time`` class.
These methods are similar to those in the Python standard library
`time` package and provide flexible input and output formatting. [#7323]
* Added ``datetime64`` format to the ``Time`` class to support working with
``numpy.datetime64`` dtype arrays. [#7361]
* Add fractional second support for ``strftime`` and ``strptime`` methods
of ``Time`` class. [#7705]
* Added an ``insert`` method to allow inserting one or more values into a
``Time`` or ``TimeDelta`` object. [#7897]
* Remove timescale from string version of FITS format time string.
The timescale is not part of the FITS standard and should not be included.
This change may cause some compatibility issues for code that relies on
round-tripping a FITS format string with a timescale. Strings generated
from previous versions of this package are still understood but a
DeprecationWarning will be issued. [#7870]
> astropy.uncertainty
* This sub-package was added as a "preview" (i.e. API unstable), containing
the ``Distribution`` class and associated convenience functions. [#6945]
> astropy.units
* Add complex numbers support for ``Quantity._repr_latex_``. [#7676]
* Add ``thermodynamic_temperature`` equivalency to convert between
Jy/beam and "thermodynamic temperature" for cosmology. [#7054]
* Add millibar unit. [#7863]
* Add maggy and nanomaggy unit, as well as associated ``zero_point_flux``
equivalency. [#7891]
* ``AB`` and ``ST`` are now enabled by default, and have alternate names
``ABflux`` and ``STflux``. [#7891]
* Added ``littleh`` unit and associated ``with_H0`` equivalency. [#7970]
> astropy.visualization
* Added ``imshow_norm`` function, which combines imshow and creation of a
``ImageNormalize`` object. [#7785]
> astropy.visualization.wcsaxes
* Add support for setting ``set_separator(None)`` in WCSAxes to use default
separators. [#7570]
* Added two keyword argument options to ``CoordinateHelper.set_format_unit``:
``decimal`` can be used to specify whether to use decimal formatting for the
labels (by default this is False for degrees and hours and True otherwise),
and ``show_decimal_unit`` can be used to determine whether the units should be
shown for decimal labels. [#7318]
* Added documentation for ``transform=`` and ``coord_meta=``. [#7698]
* Allow ``coord_meta=`` to optionally include ``format_unit=``. [#7848]
* Add support for more rcParams related to the grid, ticks, and labels, and
should work with most built-in Matplotlib styles. [#7961]
* Improved rendering of outward-facing ticks. [#7961]
* Add support for ``tick_params`` (which is a standard Matplotlib
function/method) on both the ``WCSAxes`` class and the individual
``CoordinateHelper`` classes. Note that this is provided for compatibility
with Matplotlib syntax users may be familiar with, but it is not the
preferred way to change settings. Instead, methods such as ``set_ticks``
should be preferred. [#7969]
* Moved the argument ``exclude_overlapping`` from ``set_ticks`` to
``set_ticklabel``. [#7969]
* Added a ``pad=`` argument to ``set_ticklabel`` to provide a way to control
the padding between ticks and tick labels. [#7969]
* Added support for setting the tick direction in ``set_ticks`` using the
``direction=`` keyword argument. [#7969]
> astropy.wcs
* Map ITRS frames to terrestrial WCS coordinates. This will make it possible to
use WCSAxes to make figures that combine both celestial and terrestrial
features. An example is plotting the coordinates of an astronomical transient
over an all- sky satellite image to illustrate the position relative to the
Earth at the time of the event. The ITRS frame is identified with WCSs that
use the ``TLON-`` and ``TLAT-`` coordinate types. There are several examples
of WCSs where this syntax is used to describe terrestrial coordinate systems:
Section 7.4.1 of `WCS in FITS "Paper II" <http://adsabs.harvard.edu/abs/2002A%26A...395.1077C>`_
and the `WCSTools documentation <http://tdc-www.harvard.edu/software/wcstools/wcstools.multiwcs.html>`_.
[#6990]
* Added the abstract base class for the low-level WCS API described in APE 14
(https://doi.org/10.5281/zenodo.1188875). [#7325]
* Add ``WCS.contains()`` function to check if the WCS footprint contains a given sky coordinate. [#7273]
* Added the abstract base class for the high-level WCS API described in APE 14
(https://doi.org/10.5281/zenodo.1188875). [#7325]
* Added the high-level wrapper class for low-level WCS objects as described in
APE 14 (https://doi.org/10.5281/zenodo.1188875). [#7326]
* Added a new property ``WCS.has_distortion``. [#7326]
* Deprecated ``_naxis1`` and ``_naxis2`` in favor of ``pixel_shape``. [#7973]
* Added compatibility to wcslib version 6. [#8093]
+ API Changes
> astropy.convolution
* ``kernel`` can now be a tuple. [#7561]
* Not technically an API changes, however, the docstring indicated that ``boundary=None``
was the default when actually it is ``boundary='fill'``. The docstring has been corrected,
however, someone may interpret this as an API change not realizing that nothing has actually
changed. [#7293]
* ``interpolate_replace_nans()`` can no longer accept the keyword argument
``preserve_nan``. It is explicitly set to ``False``. [#8088]
> astropy.coordinates
* Fixed ``astropy.coordinates.concatenate`` to include velocity data in the
concatenation. [#7922]
* Changed the name of the single argument to ``Frame.realize_frame()`` from the
(incorrect) ``representation_type`` to ``data``. [#7923]
* Negative parallaxes passed to ``Distance()`` now raise an error by default
(``allow_negative=False``), or are converted to NaN values with a warning
(``allow_negative=True``). [#7988]
* Negating a ``SphericalRepresentation`` object now changes the angular
coordinates (by rotating 180º) instead of negating the distance. [#7988]
* Creation of new frames now generally creates copies of frame attributes,
rather than inconsistently either copying or making references. [#8204]
* The frame class method ``is_equivalent_frame`` now checks for equality of
components to determine if a frame is the same when it has frame attributes
that are representations, rather than checking if they are the same
object. [#8218]
> astropy.io.ascii
* If a fast reader is explicitly selected (e.g. ``fast_reader='force'``) and
options which are incompatible with the fast reader are provided
(e.g. ``quotechar='##'``) then now a ``ParameterError`` exception will be
raised. [#5578]
* The fast readers will now raise ``InconsistentTableError`` instead of
``CParserError`` if the number of data and header columns do not match.
[#5578]
* Changed a number of ``ValueError`` exceptions to ``InconsistentTableError``
in places where the exception is related to parsing a table which is
inconsistent with the specified table format. Note that
``InconsistentTableError`` inherits from ``ValueError`` so no user code
changes are required. [#7425]
> astropy.io.fits
* The ``fits.table_to_hdu()`` function will translate any column ``format``
attributes to a TDISPn format string, if possible, and store it as a TDISPn
keyword in the ``HDU`` header. [#7226]
> astropy.modeling
* Change the order of the return values from ``FittingWithOutlierRemoval``,
such that ``fitted_model`` comes first, for consistency with other fitters.
For the second value, return only a boolean outlier ``mask``, instead of the
previous ``MaskedArray`` (which included a copy of the input data that was
both redundant and inadvertently corrupted at masked points). Return a
consistent type for the second value when ``niter=0``. [#7407]
* Set the minimum value for the ``bolometric_flux`` parameter of the
``BlackBody1D`` model to zero. [#7045]
> astropy.nddata
* Add two new uncertainty classes, ``astropy.nddata.VarianceUncertainty`` and
``astropy.nddata.InverseVariance``. [#6971]
> astropy.stats
* String values can now be used for the ``cenfunc`` and ``stdfunc``
keywords in the ``SigmaClip`` class and ``sigma_clip`` and
``sigma_clipped_stats`` functions. [#7478]
* The ``SigmaClip`` class and ``sigma_clip`` and
``sigma_clipped_stats`` functions now have a ``masked`` keyword,
which can be used to return either a masked array (default) or an
ndarray with the min/max values. [#7478]
* The ``iters`` keyword has been renamed (and deprecated) to
``maxiters`` in the ``SigmaClip`` class and ``sigma_clip`` and
``sigma_clipped_stats`` functions. [#7478]
> astropy.table
* ``Table.read()`` on a FITS binary table file will convert any TDISPn header
keywords to a Python formatting string when possible, and store it in the
column ``format`` attribute. [#7226]
* No values provided to stack will now raise ``ValueError`` rather than
``TypeError``. [#7674]
> astropy.tests
* ``from astropy.tests.helper import *`` no longer includes
``quantity_allclose``. However,
``from astropy.tests.helper import quantity_allclose`` would still work.
[#7381]
* ``warnings_to_ignore_by_pyver`` option in
``enable_deprecations_as_exceptions()`` now takes ``None`` as key.
Any deprecation message that is mapped to ``None`` will be ignored
regardless of the Python version. [#7790]
> astropy.time
* Added the ability to use ``local`` as time scale in ``Time`` and
``TimeDelta``. [#6487]
* Comparisons, addition, and subtraction of ``Time`` instances with non-time
instances will now return ``NotImplemented`` rather than raise the
``Time``-specific ``OperandTypeError``. This will generally lead to a
regular ``TypeError``. As a result, ``OperandTypeError`` now only occurs if
the operation is between ``Time`` instances of incompatible type or scale.
[#7584]
> astropy.units
* In ``UnitBase.compose()``, if a sequence (list|tuple) is passed in to
``units``, the default for ``include_prefix_units`` is set to
`True`, so that no units get ignored. [#6957]
* Negative parallaxes are now converted to NaN values when using the
``parallax`` equivalency. [#7988]
> astropy.utils
* ``InheritDocstrings`` now also works on class properties. [#7166]
* ``diff_values()``, ``report_diff_values()``, and ``where_not_allclose()``
utility functions are moved from ``astropy.io.fits.diff``. [#7444]
* ``invalidate_caches()`` has been removed from the
``astropy.utils.compat`` namespace, use it directly from ``importlib``. [#7872]
> astropy.visualization
* In ``ImageNormalize``, the default for ``clip`` is set to ``True``. [#7800]
* Changed ``AsymmetricPercentileInterval`` and ``MinMaxInterval`` to
ignore NaN values in arrays. [#7360]
* Automatically default to using ``grid_type='contours'`` in WCSAxes when using
a custom ``Transform`` object if the transform has no inverse. [#7847]
+ Performance Improvements
* Reduced import time by more cautious use of the standard library. [#7647]
> astropy.convolution
* Major performance overhaul to ``convolve()``. [#7293]
* ``convolve()``: Boundaries ``fill``, ``extend``, and ``wrap`` now use a single
implementation that pads the image with the correct boundary values before convolving.
The runtimes of these three were significantly skewed. They now have
equivalent runtimes that are also faster than before due to performant contiguous
memory access. However, this does increase the memory footprint as an entire
new image array is required plus that needed for the padded region.[#7293]
* ``convolve()``: Core computation ported from Cython to C. Several optimization
techniques have been implemented to achieve performance gains, e.g. compiler
hoisting, and vectorization, etc. Compiler optimization level ``-O2`` required for
hoisting and ``-O3`` for vectorization. [#7293]
* ``convolve()``: ``nan_treatment=‘interpolate’`` was slow to compute irrespective of
whether any NaN values exist within the array. The input array is now
checked for NaN values and interpolation is disabled if non are found. This is a
significant performance boost for arrays without NaN values. [#7293]
> astropy.coordinates
* Sped up creating SkyCoord objects by a factor of ~2 in some cases. [#7615]
* Sped up getting xyz vectors from ``CartesianRepresentation`` (which
is used a lot internally). [#7638]
* Sped up transformations and some representation methods by replacing
python code with (compiled) ``erfa`` ufuncs. [#7639]
* Sped up adding differential (velocity) data to representations by a factor of
~20, which improves the speed of frame and SkyCoord initialization. [#7924]
* Refactored ``SkyCoord`` initializer to improve performance and code clarity.
[#7958]
* Sped up initialization of ``Longitude`` by ~40%. [#7616]
> astropy.stats
* The ``SigmaClip`` class and ``sigma_clip`` and
``sigma_clipped_stats`` functions are now significantly faster. [#7478]
* A Cython implementation for `astropy.stats.kuiper_two` and a vectorized
implementation for `astropy.stats.kuiper_false_positive_probability` have
been added, speeding up both functions. [#8104]
> astropy.units
* Sped up creating new composite units, and raising units to some power
[#7549, #7649]
* Sped up Unit.to when target unit is the same as the original unit.
[#7643]
* Lazy-load ``scipy.special`` to shorten ``astropy.units`` import time. [#7636]
> astropy.visualization
* Significantly sped up drawing of contours in WCSAxes. [#7568]
+ Bug Fixes
> astropy.convolution
* Fixed bug in ``convolve_fft`` where masked input was copied with
``numpy.asarray`` instead of ``numpy.asanyarray``.
``numpy.asarray`` removes the mask subclass causing
``numpy.ma.ismasked(input)`` to fail, causing ``convolve_fft``
to ignore all masked input. [#8137]
* Remove function side-effects of input data from ``convolve_fft``.
It was possible for input data to remain modified if particular exceptions
were raised. [#8152]
> astropy.coordinates
* ``EarthLocation.of_address`` now uses the OpenStreetMap geocoding API by
default to retrieve coordinates, with the Google API (which now requires an
API key) as an option. [#7918]
* Fixed a bug that caused frame objects with NaN distances to have NaN sky
positions, even if valid sky coordinates were specified. [#7988]
* Fixed ``represent_as()`` to not round-trip through cartesian if the same
representation class as the instance is passed in. [#7988]
> astropy.io.ascii
* Fixed a problem when ``guess=True`` that ``fast_reader`` options
could be dropped after the first fast reader class was tried. [#5578]
* Units in CDS-formatted tables are now parsed correctly by the units
module. [#7348]
> astropy.io.misc
* Fixed bug when writing a table with masked columns to HDF5. Previously
the mask was being silently dropped. If the ``serialize_meta`` option is
enabled the data mask will now be written as an additional column and the
masked columns will round-trip correctly. [#7481]
* Fixed a bug where writing to HDF5 failed for for tables with columns of
unicode strings. Now those columns are first encoded to UTF-8 and
written as byte strings. [#7024, #8017]
* Fixed a bug with serializing the bounding_box of models initialized
with ``Quantities`` . [#8052]
> astropy.io.fits
* Added support for ``copy.copy`` and ``copy.deepcopy`` for ``HDUList``. [#7218]
* Override ``HDUList.copy()`` to return a shallow HDUList instance. [#7218]
> astropy.modeling
* Fix behaviour of certain models with units, by making certain unit-related
attributes readonly. [#7210]
* Fixed an issue with validating a ``bounding_box`` whose items are
``Quantities``. [#8052]
* Fix ``Moffat1D`` and ``Moffat2D`` derivatives. [#8108]
> astropy.nddata
* Fixed rounding behavior in ``overlap_slices`` for even-sized small
arrays. [#7859]
* Added support for pickling ``NDData`` instances that have an uncertainty.
[#7383]
> astropy.stats
* Fix errors in ``kuiper_false_positive_probability``. [#7975]
> astropy.tests
* Fixing bug that prevented to run the doctests on only a single rst documentation
file rather than all of them. [#8055]
> astropy.time
* Fix a bug when setting a ``TimeDelta`` array item with plain float value(s).
This was always interpreted as a JD (day) value regardless of the
``TimeDelta`` format. [#7990]
> astropy.units
* To simplify fast creation of ``Quantity`` instances from arrays, one can now
write ``array << unit`` (equivalent to ``Quantity(array, unit, copy=False)``).
If ``array`` is already a ``Quantity``, this will convert the quantity to the
requested units; in-place conversion can be done with ``quantity <<= unit``.
[#7734]
> astropy.utils
* Fixed a bug due to which ``report_diff_values()`` was reporting incorrect
number of differences when comparing two ``numpy.ndarray``. [#7470]
* The download progress bar is now only displayed in terminals, to avoid
polluting piped output. [#7577]
* Ignore URL mirror caching when there is no internet. [#8163]
> astropy.visualization
* Right ascension coordinates are now shown in hours by default, and the
``set_format_unit`` method on ``CoordinateHelper`` now works correctly
with angle coordinates. [#7215]
+ Other Changes and Additions
* The documentation build now uses the Sphinx configuration from sphinx-astropy
rather than from astropy-helpers. [#7139]
* Versions of Numpy <1.13 are no longer supported. [#7058]
* Running tests now suppresses the output of the installation stage by default,
to allow easier viewing of the test results. To re-enable the output as
before, use ``python setup.py test --verbose-install``. [#7512]
* The ERFA functions are now wrapped in ufuncs instead of custom C code,
leading to some speed improvements, and setting the stage for allowing
overrides with ``__array_ufunc__``. [#7502]
* Updated the bundled CFITSIO library to 3.450. See
``cextern/cfitsio/docs/changes.txt`` for additional information. [#8014]
* The ``representation`` keywords in coordinate frames are now deprecated in
favor of the ``representation_type`` keywords (which are less
ambiguously named). [#8119]
- Update to 3.0.5
* Update to 3.* is a large step, which contains these main
improvements:
- Full support for velocities in astropy.coordinates
- Support for position updates based on source motion for
SkyCoord objects
- Context managers for versioned constants
- Support for quantities in scipy special functions
- showtable command line script
- Lossless writing and reading mixin columns to HDF5 and
FITS
- Support for FITS time standard
- FITS table performance enhancements
- False alarm probabilities in astropy.stats.LombScargle
- Reading large ASCII files in chunks
- Astropy now only supports Python 3
- pytest plugins moved to external packages
Full changelog is available at http://docs.astropy.org/en/stable/changelog.html
OBS-URL: https://build.opensuse.org/request/show/663419
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-astropy?expand=0&rev=4
2019-01-21 10:47:14 +01:00
|
|
|
BuildRequires: %{python_module pytest-astropy}
|
Accepting request 795557 from home:bnavigator:branches:devel:languages:python:numeric
- Update to 4.0.1.post1
* astropy.config
[gh#astropy/astropy#9975]
Fixed a bug where importing a development version of a package that
uses ``astropy`` configuration system can result in a
``~/.astropy/config/package..cfg`` file.
* astropy.coordinates
[gh#astropy/astropy#9815]
Fixed a bug where a vestigal trace of a frame class could persist in the
transformation graph even after the removal of all transformations involving
that frame class.
[gh#astropy/astropy#9815]
Fixed a bug with ``TransformGraph.remove_transform()`` when the "from" and
"to" frame classes are not explicitly specified.
[gh#astropy/astropy#9900]
Read-only longitudes can now be passed in to ``EarthLocation`` even if
they include angles outside of the range of -180 to 180 degrees.
[gh#astropy/astropy#9980]
```SkyCoord.radial_velocity_correction``` no longer raises an Exception
when space motion information is present on the SkyCoord.
* astropy.io
[gh#astropy/astropy#9866]
Fixed a bug that prevented the unified I/O infrastructure from working with
datasets that are represented by directories rather than files.
* astropy.io.ascii
[gh#astropy/astropy#9918]
Fixed a bug in the ``fast_reader`` C parsers incorrectly returning entries
of isolated positive/negative signs as ``float`` instead of ``str``.
[gh#astropy/astropy#9923]
Fixed a segmentation fault in the ``fast_reader`` C parsers when parsing an
invalid file with ``guess=True`` and the file contains inconsistent column
numbers in combination with a quoted field; e.g., ``"1 2\n 3 4 '5'"``.
[gh#astropy/astropy#9933]
Magnitude, decibel, and dex can now be stored in ``ecsv`` files.
* astropy.io.misc
[gh#astropy/astropy#9933]
Magnitude, decibel, and dex can now be stored in ``hdf5`` files.
[gh#astropy/astropy#9956, gh#astropy/astropy#9961]
Fixed serialization of polynomial models to include non default values of
domain and window values.
[gh#astropy/astropy#9950]
Fixed a bug which affected overwriting tables within ``hdf5`` files.
Overwriting an existing path with associated column meta data now also
overwrites the meta data associated with the table.
[gh#astropy/astropy#9983]
Fixed serialization of Time objects with location under time-1.0.0
ASDF schema.
* astropy.io.fits
[gh#astropy/astropy#9711, gh#astropy/astropy#9934]
Fix regression with ``GroupsHDU`` which needs to modify the header to handle
invalid headers, and fix accesing ``.data`` for empty HDU.
[gh#astropy/astropy#9711]
Fix ``fitsdiff`` when its arguments are directories that contain other
directories.
[gh#astropy/astropy#9958]
Fix writing noncontiguous data to a compressed HDU.
[gh#astropy/astropy#9978]
Added verification of ``disp`` (``TDISP``) keyword to ``fits.Column`` and
extended tests for ``TFORM`` and ``TDISP`` validation.
[gh#astropy/astropy#10012]
Fix checksum verification to process all HDUs instead of only the first one
because of the lazy loading feature.
[gh#astropy/astropy#10030]
Allow passing ``output_verify`` to ``.close`` when using the context manager.
[gh#astropy/astropy#10041]
Prevent instantiation of ``PrimaryHDU`` and ``ImageHDU`` with a scalar.
[gh#astropy/astropy#10069]
Fix column access by attribute with FITS_rec: columns with scaling or columns
from ASCII tables where not properly converted when accessed by attribute
name.
* astropy.io.misc
[gh#astropy/astropy#9933]
Magnitude, decibel, and dex can now be stored in ``hdf5`` files.
[gh#astropy/astropy#9956, gh#astropy/astropy#9961]
Fixed serialization of polynomial models to include non default values of
domain and window values.
[gh#astropy/astropy#9950]
Fixed a bug which affected overwriting tables within ``hdf5`` files.
Overwriting an existing path with associated column meta data now also
overwrites the meta data associated with the table.
[gh#astropy/astropy#9983]
Fixed serialization of Time objects with location under time-1.0.0
ASDF schema.
* astropy.modeling
[gh#astropy/astropy#9987]
Fixed a bug in setting default values of parameters of orthonormal
polynomials when constructing a model set.
* astropy.table
[gh#astropy/astropy#9839]
Fixed bug in ``Table.reverse`` for tables that contain non-mutable mixin columns
(like ``SkyCoord``) for which in-place item update is not allowed.
[gh#astropy/astropy#9933]
Tables containing Magnitude, decibel, and dex columns can now be saved to
``ecsv`` files.
[gh#astropy/astropy#10027]
Fixed bug where adding or inserting a row fails on a table with an index
defined on a column that is not the first one.
[gh#astropy/astropy#10068]
Ensured that ``table.show_in_browser`` also worked for mixin columns like
``Time`` and ``SkyCoord``.
* astropy.time
[gh#astropy/astropy#9679]
Fix inaccuracy when converting between TimeDelta and datetime.timedelta.
[gh#astropy/astropy#9812]
Fixed exception when changing ``format`` in the case when ``out_subfmt`` is
defined and is incompatible with the new format.
[gh#astropy/astropy#9812]
Fixed exceptions in ``Time.to_value()``: when supplying any ``subfmt`` argument
for string-based formats like 'iso', and for ``subfmt='long'`` for the formats
'byear', 'jyear', and 'decimalyear'.
[gh#astropy/astropy#9969]
Fixed bug where the location attribute was lost when creating a new ``Time``
object from an existing ``Time`` or list of ``Time`` objects.
[gh#astropy/astropy#10034]
Fixed a bug where an exception occurred when creating a ``Time`` object
if the ``val1`` argument was a regular double and the ``val2`` argument
was a ``longdouble``.
* astropy.timeseries
[gh#astropy/astropy#10013]
Fixed issue with reference time for the ``transit_time`` parameter returned by
the ``BoxLeastSquares`` periodogram. Now, the ``transit_time`` will be within
the range of the input data and arbitrary time offsets/zero points no longer
affect results.
* astropy.units
[gh#astropy/astropy#9948]
Fix for ``quantity_input`` annotation raising an exception on iterable
types that don't define a general ``__contains__`` for checking if ``None``
is contained (e.g. Enum as of python3.8), by instead checking for instance of
Sequence.
[gh#astropy/astropy#10066]
Fix for ``u.Quantity`` not taking into account ``ndmin`` if constructed from
another ``u.Quantity`` instance with different but convertible unit
* astropy.utils
[gh#astropy/astropy#9981]
Fixed ``deprecated_renamed_argument`` not passing in user value to
deprecated keyword when the keyword has no new name.
[gh#astropy/astropy#9985]
Fixed ``deprecated_renamed_argument`` not issuing a deprecation warning when
deprecated keyword without new name is passed in as positional argument.
[gh#astropy/astropy#10007]
Fixed detection of read-only filesystems in the caching code.
* astropy.visualization
[gh#astropy/astropy#9848]
Fixed bug from matplotlib >=3.1 where an empty Quantity array is
sent for unit conversion as an empty list.
[gh#astropy/astropy#9913]
Fix bug in ``ZScaleInterval`` to return the array minimum and
maximum when there are less then ``min_npixels`` in the input array.
[gh#astropy/astropy#8004, gh#astropy/astropy#9991]
Fix a bug in simplifying axis labels that affected non-rectangular frames.
* Increase minimum asdf version to 2.5.2.
[gh#astropy/astropy#9996, gh#astropy/astropy#9819]
* Updated wcslib to v7.2. [gh#astropy/astropy#10021]
- updated test requirements and recommends
- run pytest directly
OBS-URL: https://build.opensuse.org/request/show/795557
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-astropy?expand=0&rev=23
2020-04-20 19:58:35 +02:00
|
|
|
BuildRequires: %{python_module pytest-mpl}
|
2020-10-23 13:32:38 +02:00
|
|
|
BuildRequires: %{python_module pytest-xdist}
|
|
|
|
BuildRequires: %{python_module sgp4}
|
|
|
|
BuildRequires: %{python_module skyfield}
|
Accepting request 663419 from devel:languages:python:numeric
- Use pytest-astropy since it is in Factory now.
- Update to version 3.1
+ New Features
> astropy.convolution
* ``convolve`` now accepts any array-like input, not just ``numpy.ndarray`` or
lists. [#7303]
* ``convolve`` Now raises AstropyUserWarning if nan_treatment='interpolate' and
preserve_nan=False and NaN values are present post convolution. [#8088]
> astropy.coordinates
* The ``SkyCoord.from_name`` constructor now has the ability to create
coordinate objects by parsing object catalogue names that have embedded
J-coordinates. [#7830]
* The new function ``make_transform_graph_docs`` can be used to create a
docstring graph from a custom ``TransformGraph`` object. [#7135]
* ``KDTree`` for catalog matching is now built with sliding midpoint rule
rather than standard. In code, this means setting ``compact_nodes=False``
and ``balanced_tree=False`` in ``cKDTree``. The sliding midpoint rule is much
more suitable for catalog matching, and results in 1000x speedup in some
cases. [#7324]
* Additional information about a site loaded from the Astropy sites registry is
now available in ``EarthLocation.info.meta``. [#7857]
* Added a ``concatenate_representations`` function to combine coordinate
representation data and any associated differentials. [#7922]
* ``BaseCoordinateFrame`` will now check for a method named
``_astropy_repr_in_frame`` when constructing the string forms of attributes.
Allowing any class to control how ``BaseCoordinateFrame`` represents it when
it is an attribute of a frame. [#7745]
* Some rarely-changed attributes of frame classes are now cached, resulting in
speedups (up to 50% in some cases) when creating new scalar frame or
``SkyCoord`` objects. [#7949, #5952]
* Added a ``directional_offset_by`` method to ``SkyCoord`` that computes a new
coordinate given a coordinate, position angle, and angular separation [#5727]
> astropy.cosmology
* The default cosmology has been changed from ``WMAP9`` to ``Planck15``. [#8123]
* Distance calculations with ``LambaCDM`` with no radiation (T_CMB0=0)
are now 20x faster by using elliptic integrals for non-flat cases. [#7155]
* Distance calculations with ``FlatLambaCDM`` with no radiation (T_CMB0=0)
are now 20x faster by using the hypergeometric function solution
for this special case. [#7087]
* Age calculations with ``FlatLambdaCDM`` with no radiation (Tcmb0=0)
are now 1000x faster by using analytic solutions instead of integrating.
[#7117]
> astropy.io.ascii
* Latex reader now ignores ``\toprule``, ``\midrule``, and ``\bottomrule``
commands. [#7349]
* Added the RST (Restructured-text) table format and the fast version of the
RDB reader to the set of formats that are guessed by default. [#5578]
* The read trace (used primarily for debugging) now includes guess argument
sets that were skipped entirely e.g. for not supporting user-supplied kwargs.
All guesses thus removed from ``filtered_guess_kwargs`` are now listed as
"Disabled" at the beginning of the trace. [#5578]
* Emit a warning when reading an ECSV file without specifying the ``format``
and without PyYAML installed. Previously this silently fell through to
parsing as a basic format file and the file metadata was lost. [#7580]
* Optionally allow writing masked columns to ECSV with the mask explicitly
specified as a separate column instead of marking masked elements with ""
(empty string). This allows handling the case of a masked string column
with "" data rows. [#7481]
> astropy.io.misc
* Added support for saving all representation classes and many coordinate
frames to the asdf format. [#7079]
* Added support for saving models with units to the asdf format. [#7237]
* Added a new ``character_as_bytes`` keyword to the HDF5 Table reading
function to control whether byte string columns in the HDF5 file
are left as bytes or converted to unicode. The default is to read
as bytes (``character_as_bytes=True``). [#7024, #8017]
> astropy.io.fits
* ``HDUList.pop()`` now accepts string and tuple extension name
specifications. [#7236]
* Add an ``ignore_hdus`` keyword to ``FITSDiff`` to allow ignoring HDUs by
NAME when diffing two FITS files [#7538]
* Optionally allow writing masked columns to FITS with the mask explicitly
specified as a separate column instead of using the FITS standard of
certain embedded null values (``NaN`` for float, ``TNULL`` for integers).
This can be used to work around limitations in the FITS standard. [#7481]
* All time coordinates can now be written to and read from FITS binary tables,
including those with vectorized locations. [#7430]
* The ``fitsheader`` command line tool now supports a ``dfits+fitsort`` mode,
and the dotted notation for keywords (e.g. ``ESO.INS.ID``). [#7240]
* Fall back to reading arrays using mode='denywrite' if mode='readonly' fails
when using memory-mapping. This solves cases on some platforms when the
available address space was less than the file size (even when using memory
mapping). [#7926]
> astropy.modeling
* Add a ``Multiply`` model which preserves unit through evaluate, unlike
``Scale`` which is dimensionless. [#7210]
* Add a ``uses_quantity`` property to ``Model`` which allows introspection of if
the ``Model`` can accept ``Quantity`` objects. [#7417]
* Add a ``separability_matrix`` function which returns the correlation matrix
of inputs and outputs. [#7803]
* Fixed compatibility of ``JointFitter`` with the latest version of Numpy. [#7984]
* Add ``prior`` and ``posterior`` constraints to modeling parameters. These are
not used by any current fitters, but are provided to allow user code to
experiment with Bayesian fitters. [#7558]
> astropy.nddata
* ``NDUncertainty`` objects now have a ``quantity`` attribute for simple
conversion to quantities. [#7704]
* Add a ``bitmask`` module that provides functions for manipulating bitmasks
and data quality (DQ) arrays. [#7944]
> astropy.stats
* Add an ``astropy.stats.bls`` module with an implementation of the "box least
squares" periodogram that is commonly used for discovering transiting
exoplanets and eclipsing binaries. [#7391]
> astropy.table
* Added support for full use of ``Time`` mixin column for join, hstack, and
vstack table operations. [#6888]
* Added a new table index engine, ``SCEngine``, based on the Sorted Containers
package. [#7574]
* Add a new keyword argument ``serialize_method`` to ``Table.write`` to
control how ``Time`` and ``MaskedColumn`` columns are written. [#7481]
* Allow mixin columns to be used in table ``group`` and ``unique``
functions. This applies to both the key columns and the other data
columns. [#7712]
* Added support for stacking ``Column``, mixin column (e.g. ``Quantity``,
``Time``) or column-like objects. [#7674]
* Added support for inserting a row into a Table that has ``Time`` or
``TimeDelta`` column(s). [#7897]
> astropy.tests
* Added an option ``--readonly`` to the test command to change the
permissions on the temporary installation location to read-only. [#7598]
> astropy.time
* Allow array-valued ``Time`` object to be modified in place. [#6028]
* Added support for missing values (masking) to the ``Time`` class. [#6028]
* Added supper for a 'local' time scale (for free-running clocks, etc.),
and round-tripping to the corresponding FITS time scale. [#7122]
* Added `datetime.timedelta` format class for ``TimeDelta``. [#7441]
* Added ``strftime`` and ``strptime`` methods to ``Time`` class.
These methods are similar to those in the Python standard library
`time` package and provide flexible input and output formatting. [#7323]
* Added ``datetime64`` format to the ``Time`` class to support working with
``numpy.datetime64`` dtype arrays. [#7361]
* Add fractional second support for ``strftime`` and ``strptime`` methods
of ``Time`` class. [#7705]
* Added an ``insert`` method to allow inserting one or more values into a
``Time`` or ``TimeDelta`` object. [#7897]
* Remove timescale from string version of FITS format time string.
The timescale is not part of the FITS standard and should not be included.
This change may cause some compatibility issues for code that relies on
round-tripping a FITS format string with a timescale. Strings generated
from previous versions of this package are still understood but a
DeprecationWarning will be issued. [#7870]
> astropy.uncertainty
* This sub-package was added as a "preview" (i.e. API unstable), containing
the ``Distribution`` class and associated convenience functions. [#6945]
> astropy.units
* Add complex numbers support for ``Quantity._repr_latex_``. [#7676]
* Add ``thermodynamic_temperature`` equivalency to convert between
Jy/beam and "thermodynamic temperature" for cosmology. [#7054]
* Add millibar unit. [#7863]
* Add maggy and nanomaggy unit, as well as associated ``zero_point_flux``
equivalency. [#7891]
* ``AB`` and ``ST`` are now enabled by default, and have alternate names
``ABflux`` and ``STflux``. [#7891]
* Added ``littleh`` unit and associated ``with_H0`` equivalency. [#7970]
> astropy.visualization
* Added ``imshow_norm`` function, which combines imshow and creation of a
``ImageNormalize`` object. [#7785]
> astropy.visualization.wcsaxes
* Add support for setting ``set_separator(None)`` in WCSAxes to use default
separators. [#7570]
* Added two keyword argument options to ``CoordinateHelper.set_format_unit``:
``decimal`` can be used to specify whether to use decimal formatting for the
labels (by default this is False for degrees and hours and True otherwise),
and ``show_decimal_unit`` can be used to determine whether the units should be
shown for decimal labels. [#7318]
* Added documentation for ``transform=`` and ``coord_meta=``. [#7698]
* Allow ``coord_meta=`` to optionally include ``format_unit=``. [#7848]
* Add support for more rcParams related to the grid, ticks, and labels, and
should work with most built-in Matplotlib styles. [#7961]
* Improved rendering of outward-facing ticks. [#7961]
* Add support for ``tick_params`` (which is a standard Matplotlib
function/method) on both the ``WCSAxes`` class and the individual
``CoordinateHelper`` classes. Note that this is provided for compatibility
with Matplotlib syntax users may be familiar with, but it is not the
preferred way to change settings. Instead, methods such as ``set_ticks``
should be preferred. [#7969]
* Moved the argument ``exclude_overlapping`` from ``set_ticks`` to
``set_ticklabel``. [#7969]
* Added a ``pad=`` argument to ``set_ticklabel`` to provide a way to control
the padding between ticks and tick labels. [#7969]
* Added support for setting the tick direction in ``set_ticks`` using the
``direction=`` keyword argument. [#7969]
> astropy.wcs
* Map ITRS frames to terrestrial WCS coordinates. This will make it possible to
use WCSAxes to make figures that combine both celestial and terrestrial
features. An example is plotting the coordinates of an astronomical transient
over an all- sky satellite image to illustrate the position relative to the
Earth at the time of the event. The ITRS frame is identified with WCSs that
use the ``TLON-`` and ``TLAT-`` coordinate types. There are several examples
of WCSs where this syntax is used to describe terrestrial coordinate systems:
Section 7.4.1 of `WCS in FITS "Paper II" <http://adsabs.harvard.edu/abs/2002A%26A...395.1077C>`_
and the `WCSTools documentation <http://tdc-www.harvard.edu/software/wcstools/wcstools.multiwcs.html>`_.
[#6990]
* Added the abstract base class for the low-level WCS API described in APE 14
(https://doi.org/10.5281/zenodo.1188875). [#7325]
* Add ``WCS.contains()`` function to check if the WCS footprint contains a given sky coordinate. [#7273]
* Added the abstract base class for the high-level WCS API described in APE 14
(https://doi.org/10.5281/zenodo.1188875). [#7325]
* Added the high-level wrapper class for low-level WCS objects as described in
APE 14 (https://doi.org/10.5281/zenodo.1188875). [#7326]
* Added a new property ``WCS.has_distortion``. [#7326]
* Deprecated ``_naxis1`` and ``_naxis2`` in favor of ``pixel_shape``. [#7973]
* Added compatibility to wcslib version 6. [#8093]
+ API Changes
> astropy.convolution
* ``kernel`` can now be a tuple. [#7561]
* Not technically an API changes, however, the docstring indicated that ``boundary=None``
was the default when actually it is ``boundary='fill'``. The docstring has been corrected,
however, someone may interpret this as an API change not realizing that nothing has actually
changed. [#7293]
* ``interpolate_replace_nans()`` can no longer accept the keyword argument
``preserve_nan``. It is explicitly set to ``False``. [#8088]
> astropy.coordinates
* Fixed ``astropy.coordinates.concatenate`` to include velocity data in the
concatenation. [#7922]
* Changed the name of the single argument to ``Frame.realize_frame()`` from the
(incorrect) ``representation_type`` to ``data``. [#7923]
* Negative parallaxes passed to ``Distance()`` now raise an error by default
(``allow_negative=False``), or are converted to NaN values with a warning
(``allow_negative=True``). [#7988]
* Negating a ``SphericalRepresentation`` object now changes the angular
coordinates (by rotating 180º) instead of negating the distance. [#7988]
* Creation of new frames now generally creates copies of frame attributes,
rather than inconsistently either copying or making references. [#8204]
* The frame class method ``is_equivalent_frame`` now checks for equality of
components to determine if a frame is the same when it has frame attributes
that are representations, rather than checking if they are the same
object. [#8218]
> astropy.io.ascii
* If a fast reader is explicitly selected (e.g. ``fast_reader='force'``) and
options which are incompatible with the fast reader are provided
(e.g. ``quotechar='##'``) then now a ``ParameterError`` exception will be
raised. [#5578]
* The fast readers will now raise ``InconsistentTableError`` instead of
``CParserError`` if the number of data and header columns do not match.
[#5578]
* Changed a number of ``ValueError`` exceptions to ``InconsistentTableError``
in places where the exception is related to parsing a table which is
inconsistent with the specified table format. Note that
``InconsistentTableError`` inherits from ``ValueError`` so no user code
changes are required. [#7425]
> astropy.io.fits
* The ``fits.table_to_hdu()`` function will translate any column ``format``
attributes to a TDISPn format string, if possible, and store it as a TDISPn
keyword in the ``HDU`` header. [#7226]
> astropy.modeling
* Change the order of the return values from ``FittingWithOutlierRemoval``,
such that ``fitted_model`` comes first, for consistency with other fitters.
For the second value, return only a boolean outlier ``mask``, instead of the
previous ``MaskedArray`` (which included a copy of the input data that was
both redundant and inadvertently corrupted at masked points). Return a
consistent type for the second value when ``niter=0``. [#7407]
* Set the minimum value for the ``bolometric_flux`` parameter of the
``BlackBody1D`` model to zero. [#7045]
> astropy.nddata
* Add two new uncertainty classes, ``astropy.nddata.VarianceUncertainty`` and
``astropy.nddata.InverseVariance``. [#6971]
> astropy.stats
* String values can now be used for the ``cenfunc`` and ``stdfunc``
keywords in the ``SigmaClip`` class and ``sigma_clip`` and
``sigma_clipped_stats`` functions. [#7478]
* The ``SigmaClip`` class and ``sigma_clip`` and
``sigma_clipped_stats`` functions now have a ``masked`` keyword,
which can be used to return either a masked array (default) or an
ndarray with the min/max values. [#7478]
* The ``iters`` keyword has been renamed (and deprecated) to
``maxiters`` in the ``SigmaClip`` class and ``sigma_clip`` and
``sigma_clipped_stats`` functions. [#7478]
> astropy.table
* ``Table.read()`` on a FITS binary table file will convert any TDISPn header
keywords to a Python formatting string when possible, and store it in the
column ``format`` attribute. [#7226]
* No values provided to stack will now raise ``ValueError`` rather than
``TypeError``. [#7674]
> astropy.tests
* ``from astropy.tests.helper import *`` no longer includes
``quantity_allclose``. However,
``from astropy.tests.helper import quantity_allclose`` would still work.
[#7381]
* ``warnings_to_ignore_by_pyver`` option in
``enable_deprecations_as_exceptions()`` now takes ``None`` as key.
Any deprecation message that is mapped to ``None`` will be ignored
regardless of the Python version. [#7790]
> astropy.time
* Added the ability to use ``local`` as time scale in ``Time`` and
``TimeDelta``. [#6487]
* Comparisons, addition, and subtraction of ``Time`` instances with non-time
instances will now return ``NotImplemented`` rather than raise the
``Time``-specific ``OperandTypeError``. This will generally lead to a
regular ``TypeError``. As a result, ``OperandTypeError`` now only occurs if
the operation is between ``Time`` instances of incompatible type or scale.
[#7584]
> astropy.units
* In ``UnitBase.compose()``, if a sequence (list|tuple) is passed in to
``units``, the default for ``include_prefix_units`` is set to
`True`, so that no units get ignored. [#6957]
* Negative parallaxes are now converted to NaN values when using the
``parallax`` equivalency. [#7988]
> astropy.utils
* ``InheritDocstrings`` now also works on class properties. [#7166]
* ``diff_values()``, ``report_diff_values()``, and ``where_not_allclose()``
utility functions are moved from ``astropy.io.fits.diff``. [#7444]
* ``invalidate_caches()`` has been removed from the
``astropy.utils.compat`` namespace, use it directly from ``importlib``. [#7872]
> astropy.visualization
* In ``ImageNormalize``, the default for ``clip`` is set to ``True``. [#7800]
* Changed ``AsymmetricPercentileInterval`` and ``MinMaxInterval`` to
ignore NaN values in arrays. [#7360]
* Automatically default to using ``grid_type='contours'`` in WCSAxes when using
a custom ``Transform`` object if the transform has no inverse. [#7847]
+ Performance Improvements
* Reduced import time by more cautious use of the standard library. [#7647]
> astropy.convolution
* Major performance overhaul to ``convolve()``. [#7293]
* ``convolve()``: Boundaries ``fill``, ``extend``, and ``wrap`` now use a single
implementation that pads the image with the correct boundary values before convolving.
The runtimes of these three were significantly skewed. They now have
equivalent runtimes that are also faster than before due to performant contiguous
memory access. However, this does increase the memory footprint as an entire
new image array is required plus that needed for the padded region.[#7293]
* ``convolve()``: Core computation ported from Cython to C. Several optimization
techniques have been implemented to achieve performance gains, e.g. compiler
hoisting, and vectorization, etc. Compiler optimization level ``-O2`` required for
hoisting and ``-O3`` for vectorization. [#7293]
* ``convolve()``: ``nan_treatment=‘interpolate’`` was slow to compute irrespective of
whether any NaN values exist within the array. The input array is now
checked for NaN values and interpolation is disabled if non are found. This is a
significant performance boost for arrays without NaN values. [#7293]
> astropy.coordinates
* Sped up creating SkyCoord objects by a factor of ~2 in some cases. [#7615]
* Sped up getting xyz vectors from ``CartesianRepresentation`` (which
is used a lot internally). [#7638]
* Sped up transformations and some representation methods by replacing
python code with (compiled) ``erfa`` ufuncs. [#7639]
* Sped up adding differential (velocity) data to representations by a factor of
~20, which improves the speed of frame and SkyCoord initialization. [#7924]
* Refactored ``SkyCoord`` initializer to improve performance and code clarity.
[#7958]
* Sped up initialization of ``Longitude`` by ~40%. [#7616]
> astropy.stats
* The ``SigmaClip`` class and ``sigma_clip`` and
``sigma_clipped_stats`` functions are now significantly faster. [#7478]
* A Cython implementation for `astropy.stats.kuiper_two` and a vectorized
implementation for `astropy.stats.kuiper_false_positive_probability` have
been added, speeding up both functions. [#8104]
> astropy.units
* Sped up creating new composite units, and raising units to some power
[#7549, #7649]
* Sped up Unit.to when target unit is the same as the original unit.
[#7643]
* Lazy-load ``scipy.special`` to shorten ``astropy.units`` import time. [#7636]
> astropy.visualization
* Significantly sped up drawing of contours in WCSAxes. [#7568]
+ Bug Fixes
> astropy.convolution
* Fixed bug in ``convolve_fft`` where masked input was copied with
``numpy.asarray`` instead of ``numpy.asanyarray``.
``numpy.asarray`` removes the mask subclass causing
``numpy.ma.ismasked(input)`` to fail, causing ``convolve_fft``
to ignore all masked input. [#8137]
* Remove function side-effects of input data from ``convolve_fft``.
It was possible for input data to remain modified if particular exceptions
were raised. [#8152]
> astropy.coordinates
* ``EarthLocation.of_address`` now uses the OpenStreetMap geocoding API by
default to retrieve coordinates, with the Google API (which now requires an
API key) as an option. [#7918]
* Fixed a bug that caused frame objects with NaN distances to have NaN sky
positions, even if valid sky coordinates were specified. [#7988]
* Fixed ``represent_as()`` to not round-trip through cartesian if the same
representation class as the instance is passed in. [#7988]
> astropy.io.ascii
* Fixed a problem when ``guess=True`` that ``fast_reader`` options
could be dropped after the first fast reader class was tried. [#5578]
* Units in CDS-formatted tables are now parsed correctly by the units
module. [#7348]
> astropy.io.misc
* Fixed bug when writing a table with masked columns to HDF5. Previously
the mask was being silently dropped. If the ``serialize_meta`` option is
enabled the data mask will now be written as an additional column and the
masked columns will round-trip correctly. [#7481]
* Fixed a bug where writing to HDF5 failed for for tables with columns of
unicode strings. Now those columns are first encoded to UTF-8 and
written as byte strings. [#7024, #8017]
* Fixed a bug with serializing the bounding_box of models initialized
with ``Quantities`` . [#8052]
> astropy.io.fits
* Added support for ``copy.copy`` and ``copy.deepcopy`` for ``HDUList``. [#7218]
* Override ``HDUList.copy()`` to return a shallow HDUList instance. [#7218]
> astropy.modeling
* Fix behaviour of certain models with units, by making certain unit-related
attributes readonly. [#7210]
* Fixed an issue with validating a ``bounding_box`` whose items are
``Quantities``. [#8052]
* Fix ``Moffat1D`` and ``Moffat2D`` derivatives. [#8108]
> astropy.nddata
* Fixed rounding behavior in ``overlap_slices`` for even-sized small
arrays. [#7859]
* Added support for pickling ``NDData`` instances that have an uncertainty.
[#7383]
> astropy.stats
* Fix errors in ``kuiper_false_positive_probability``. [#7975]
> astropy.tests
* Fixing bug that prevented to run the doctests on only a single rst documentation
file rather than all of them. [#8055]
> astropy.time
* Fix a bug when setting a ``TimeDelta`` array item with plain float value(s).
This was always interpreted as a JD (day) value regardless of the
``TimeDelta`` format. [#7990]
> astropy.units
* To simplify fast creation of ``Quantity`` instances from arrays, one can now
write ``array << unit`` (equivalent to ``Quantity(array, unit, copy=False)``).
If ``array`` is already a ``Quantity``, this will convert the quantity to the
requested units; in-place conversion can be done with ``quantity <<= unit``.
[#7734]
> astropy.utils
* Fixed a bug due to which ``report_diff_values()`` was reporting incorrect
number of differences when comparing two ``numpy.ndarray``. [#7470]
* The download progress bar is now only displayed in terminals, to avoid
polluting piped output. [#7577]
* Ignore URL mirror caching when there is no internet. [#8163]
> astropy.visualization
* Right ascension coordinates are now shown in hours by default, and the
``set_format_unit`` method on ``CoordinateHelper`` now works correctly
with angle coordinates. [#7215]
+ Other Changes and Additions
* The documentation build now uses the Sphinx configuration from sphinx-astropy
rather than from astropy-helpers. [#7139]
* Versions of Numpy <1.13 are no longer supported. [#7058]
* Running tests now suppresses the output of the installation stage by default,
to allow easier viewing of the test results. To re-enable the output as
before, use ``python setup.py test --verbose-install``. [#7512]
* The ERFA functions are now wrapped in ufuncs instead of custom C code,
leading to some speed improvements, and setting the stage for allowing
overrides with ``__array_ufunc__``. [#7502]
* Updated the bundled CFITSIO library to 3.450. See
``cextern/cfitsio/docs/changes.txt`` for additional information. [#8014]
* The ``representation`` keywords in coordinate frames are now deprecated in
favor of the ``representation_type`` keywords (which are less
ambiguously named). [#8119]
- Update to 3.0.5
* Update to 3.* is a large step, which contains these main
improvements:
- Full support for velocities in astropy.coordinates
- Support for position updates based on source motion for
SkyCoord objects
- Context managers for versioned constants
- Support for quantities in scipy special functions
- showtable command line script
- Lossless writing and reading mixin columns to HDF5 and
FITS
- Support for FITS time standard
- FITS table performance enhancements
- False alarm probabilities in astropy.stats.LombScargle
- Reading large ASCII files in chunks
- Astropy now only supports Python 3
- pytest plugins moved to external packages
Full changelog is available at http://docs.astropy.org/en/stable/changelog.html
OBS-URL: https://build.opensuse.org/request/show/663419
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-astropy?expand=0&rev=4
2019-01-21 10:47:14 +01:00
|
|
|
# /SECTION
|
2020-06-03 09:43:14 +02:00
|
|
|
%endif
|
2017-08-24 18:28:41 +02:00
|
|
|
%python_subpackages
|
|
|
|
|
|
|
|
%description
|
|
|
|
Astropy is a package intended to contain core functionality and some
|
|
|
|
common tools needed for performing astronomy and astrophysics research with
|
|
|
|
Python. It also provides an index for other astronomy packages and tools for
|
|
|
|
managing them.
|
|
|
|
|
2020-07-10 08:26:48 +02:00
|
|
|
%if !%{with test}
|
2017-08-24 18:28:41 +02:00
|
|
|
%prep
|
2021-03-08 17:10:52 +01:00
|
|
|
%autosetup -p1 -n astropy-%{version}
|
|
|
|
|
2017-08-24 18:28:41 +02:00
|
|
|
# Make sure bundled libs are not used
|
2021-08-05 21:04:41 +02:00
|
|
|
%if %{with system_cfitsio}
|
2017-08-24 18:28:41 +02:00
|
|
|
rm -rf cextern/cfitsio
|
2021-08-05 21:04:41 +02:00
|
|
|
%endif
|
|
|
|
%if %{with system_expat}
|
2020-10-23 13:32:38 +02:00
|
|
|
rm -rf cextern/expat
|
|
|
|
rm licenses/EXPAT_LICENSE.rst
|
2021-08-05 21:04:41 +02:00
|
|
|
%endif
|
|
|
|
%if %{with system_wcslib}
|
|
|
|
rm -rf cextern/wcslib
|
2020-10-23 13:32:38 +02:00
|
|
|
rm licenses/WCSLIB_LICENSE.rst
|
|
|
|
%endif
|
|
|
|
|
|
|
|
# Disable test failure on DeprecationWarnings
|
|
|
|
sed -i "/enable_deprecations_as_exceptions(/,/)/ d" astropy/conftest.py
|
|
|
|
# increase test deadline for slow obs executions (e.g. on s390x)
|
|
|
|
echo "
|
|
|
|
import hypothesis
|
2021-08-27 12:04:37 +02:00
|
|
|
hypothesis.settings.register_profile(
|
|
|
|
'obs',
|
|
|
|
deadline=5000,
|
|
|
|
suppress_health_check=[hypothesis.HealthCheck.too_slow]
|
|
|
|
)
|
2020-10-23 13:32:38 +02:00
|
|
|
" >> astropy/conftest.py
|
2017-08-24 18:28:41 +02:00
|
|
|
|
|
|
|
%build
|
2020-10-23 13:32:38 +02:00
|
|
|
%{?unbundle_libs}
|
|
|
|
%python_build
|
2017-08-24 18:28:41 +02:00
|
|
|
|
|
|
|
%install
|
2020-10-23 13:32:38 +02:00
|
|
|
%{?unbundle_libs}
|
|
|
|
%python_install
|
2020-05-28 09:33:22 +02:00
|
|
|
for b in %{binaries}; do
|
|
|
|
%python_clone -a %{buildroot}%{_bindir}/$b
|
|
|
|
done
|
2020-10-23 13:32:38 +02:00
|
|
|
|
|
|
|
%python_expand %fdupes %{buildroot}%{$python_sitearch}
|
2020-06-03 09:43:14 +02:00
|
|
|
%endif
|
Accepting request 663419 from devel:languages:python:numeric
- Use pytest-astropy since it is in Factory now.
- Update to version 3.1
+ New Features
> astropy.convolution
* ``convolve`` now accepts any array-like input, not just ``numpy.ndarray`` or
lists. [#7303]
* ``convolve`` Now raises AstropyUserWarning if nan_treatment='interpolate' and
preserve_nan=False and NaN values are present post convolution. [#8088]
> astropy.coordinates
* The ``SkyCoord.from_name`` constructor now has the ability to create
coordinate objects by parsing object catalogue names that have embedded
J-coordinates. [#7830]
* The new function ``make_transform_graph_docs`` can be used to create a
docstring graph from a custom ``TransformGraph`` object. [#7135]
* ``KDTree`` for catalog matching is now built with sliding midpoint rule
rather than standard. In code, this means setting ``compact_nodes=False``
and ``balanced_tree=False`` in ``cKDTree``. The sliding midpoint rule is much
more suitable for catalog matching, and results in 1000x speedup in some
cases. [#7324]
* Additional information about a site loaded from the Astropy sites registry is
now available in ``EarthLocation.info.meta``. [#7857]
* Added a ``concatenate_representations`` function to combine coordinate
representation data and any associated differentials. [#7922]
* ``BaseCoordinateFrame`` will now check for a method named
``_astropy_repr_in_frame`` when constructing the string forms of attributes.
Allowing any class to control how ``BaseCoordinateFrame`` represents it when
it is an attribute of a frame. [#7745]
* Some rarely-changed attributes of frame classes are now cached, resulting in
speedups (up to 50% in some cases) when creating new scalar frame or
``SkyCoord`` objects. [#7949, #5952]
* Added a ``directional_offset_by`` method to ``SkyCoord`` that computes a new
coordinate given a coordinate, position angle, and angular separation [#5727]
> astropy.cosmology
* The default cosmology has been changed from ``WMAP9`` to ``Planck15``. [#8123]
* Distance calculations with ``LambaCDM`` with no radiation (T_CMB0=0)
are now 20x faster by using elliptic integrals for non-flat cases. [#7155]
* Distance calculations with ``FlatLambaCDM`` with no radiation (T_CMB0=0)
are now 20x faster by using the hypergeometric function solution
for this special case. [#7087]
* Age calculations with ``FlatLambdaCDM`` with no radiation (Tcmb0=0)
are now 1000x faster by using analytic solutions instead of integrating.
[#7117]
> astropy.io.ascii
* Latex reader now ignores ``\toprule``, ``\midrule``, and ``\bottomrule``
commands. [#7349]
* Added the RST (Restructured-text) table format and the fast version of the
RDB reader to the set of formats that are guessed by default. [#5578]
* The read trace (used primarily for debugging) now includes guess argument
sets that were skipped entirely e.g. for not supporting user-supplied kwargs.
All guesses thus removed from ``filtered_guess_kwargs`` are now listed as
"Disabled" at the beginning of the trace. [#5578]
* Emit a warning when reading an ECSV file without specifying the ``format``
and without PyYAML installed. Previously this silently fell through to
parsing as a basic format file and the file metadata was lost. [#7580]
* Optionally allow writing masked columns to ECSV with the mask explicitly
specified as a separate column instead of marking masked elements with ""
(empty string). This allows handling the case of a masked string column
with "" data rows. [#7481]
> astropy.io.misc
* Added support for saving all representation classes and many coordinate
frames to the asdf format. [#7079]
* Added support for saving models with units to the asdf format. [#7237]
* Added a new ``character_as_bytes`` keyword to the HDF5 Table reading
function to control whether byte string columns in the HDF5 file
are left as bytes or converted to unicode. The default is to read
as bytes (``character_as_bytes=True``). [#7024, #8017]
> astropy.io.fits
* ``HDUList.pop()`` now accepts string and tuple extension name
specifications. [#7236]
* Add an ``ignore_hdus`` keyword to ``FITSDiff`` to allow ignoring HDUs by
NAME when diffing two FITS files [#7538]
* Optionally allow writing masked columns to FITS with the mask explicitly
specified as a separate column instead of using the FITS standard of
certain embedded null values (``NaN`` for float, ``TNULL`` for integers).
This can be used to work around limitations in the FITS standard. [#7481]
* All time coordinates can now be written to and read from FITS binary tables,
including those with vectorized locations. [#7430]
* The ``fitsheader`` command line tool now supports a ``dfits+fitsort`` mode,
and the dotted notation for keywords (e.g. ``ESO.INS.ID``). [#7240]
* Fall back to reading arrays using mode='denywrite' if mode='readonly' fails
when using memory-mapping. This solves cases on some platforms when the
available address space was less than the file size (even when using memory
mapping). [#7926]
> astropy.modeling
* Add a ``Multiply`` model which preserves unit through evaluate, unlike
``Scale`` which is dimensionless. [#7210]
* Add a ``uses_quantity`` property to ``Model`` which allows introspection of if
the ``Model`` can accept ``Quantity`` objects. [#7417]
* Add a ``separability_matrix`` function which returns the correlation matrix
of inputs and outputs. [#7803]
* Fixed compatibility of ``JointFitter`` with the latest version of Numpy. [#7984]
* Add ``prior`` and ``posterior`` constraints to modeling parameters. These are
not used by any current fitters, but are provided to allow user code to
experiment with Bayesian fitters. [#7558]
> astropy.nddata
* ``NDUncertainty`` objects now have a ``quantity`` attribute for simple
conversion to quantities. [#7704]
* Add a ``bitmask`` module that provides functions for manipulating bitmasks
and data quality (DQ) arrays. [#7944]
> astropy.stats
* Add an ``astropy.stats.bls`` module with an implementation of the "box least
squares" periodogram that is commonly used for discovering transiting
exoplanets and eclipsing binaries. [#7391]
> astropy.table
* Added support for full use of ``Time`` mixin column for join, hstack, and
vstack table operations. [#6888]
* Added a new table index engine, ``SCEngine``, based on the Sorted Containers
package. [#7574]
* Add a new keyword argument ``serialize_method`` to ``Table.write`` to
control how ``Time`` and ``MaskedColumn`` columns are written. [#7481]
* Allow mixin columns to be used in table ``group`` and ``unique``
functions. This applies to both the key columns and the other data
columns. [#7712]
* Added support for stacking ``Column``, mixin column (e.g. ``Quantity``,
``Time``) or column-like objects. [#7674]
* Added support for inserting a row into a Table that has ``Time`` or
``TimeDelta`` column(s). [#7897]
> astropy.tests
* Added an option ``--readonly`` to the test command to change the
permissions on the temporary installation location to read-only. [#7598]
> astropy.time
* Allow array-valued ``Time`` object to be modified in place. [#6028]
* Added support for missing values (masking) to the ``Time`` class. [#6028]
* Added supper for a 'local' time scale (for free-running clocks, etc.),
and round-tripping to the corresponding FITS time scale. [#7122]
* Added `datetime.timedelta` format class for ``TimeDelta``. [#7441]
* Added ``strftime`` and ``strptime`` methods to ``Time`` class.
These methods are similar to those in the Python standard library
`time` package and provide flexible input and output formatting. [#7323]
* Added ``datetime64`` format to the ``Time`` class to support working with
``numpy.datetime64`` dtype arrays. [#7361]
* Add fractional second support for ``strftime`` and ``strptime`` methods
of ``Time`` class. [#7705]
* Added an ``insert`` method to allow inserting one or more values into a
``Time`` or ``TimeDelta`` object. [#7897]
* Remove timescale from string version of FITS format time string.
The timescale is not part of the FITS standard and should not be included.
This change may cause some compatibility issues for code that relies on
round-tripping a FITS format string with a timescale. Strings generated
from previous versions of this package are still understood but a
DeprecationWarning will be issued. [#7870]
> astropy.uncertainty
* This sub-package was added as a "preview" (i.e. API unstable), containing
the ``Distribution`` class and associated convenience functions. [#6945]
> astropy.units
* Add complex numbers support for ``Quantity._repr_latex_``. [#7676]
* Add ``thermodynamic_temperature`` equivalency to convert between
Jy/beam and "thermodynamic temperature" for cosmology. [#7054]
* Add millibar unit. [#7863]
* Add maggy and nanomaggy unit, as well as associated ``zero_point_flux``
equivalency. [#7891]
* ``AB`` and ``ST`` are now enabled by default, and have alternate names
``ABflux`` and ``STflux``. [#7891]
* Added ``littleh`` unit and associated ``with_H0`` equivalency. [#7970]
> astropy.visualization
* Added ``imshow_norm`` function, which combines imshow and creation of a
``ImageNormalize`` object. [#7785]
> astropy.visualization.wcsaxes
* Add support for setting ``set_separator(None)`` in WCSAxes to use default
separators. [#7570]
* Added two keyword argument options to ``CoordinateHelper.set_format_unit``:
``decimal`` can be used to specify whether to use decimal formatting for the
labels (by default this is False for degrees and hours and True otherwise),
and ``show_decimal_unit`` can be used to determine whether the units should be
shown for decimal labels. [#7318]
* Added documentation for ``transform=`` and ``coord_meta=``. [#7698]
* Allow ``coord_meta=`` to optionally include ``format_unit=``. [#7848]
* Add support for more rcParams related to the grid, ticks, and labels, and
should work with most built-in Matplotlib styles. [#7961]
* Improved rendering of outward-facing ticks. [#7961]
* Add support for ``tick_params`` (which is a standard Matplotlib
function/method) on both the ``WCSAxes`` class and the individual
``CoordinateHelper`` classes. Note that this is provided for compatibility
with Matplotlib syntax users may be familiar with, but it is not the
preferred way to change settings. Instead, methods such as ``set_ticks``
should be preferred. [#7969]
* Moved the argument ``exclude_overlapping`` from ``set_ticks`` to
``set_ticklabel``. [#7969]
* Added a ``pad=`` argument to ``set_ticklabel`` to provide a way to control
the padding between ticks and tick labels. [#7969]
* Added support for setting the tick direction in ``set_ticks`` using the
``direction=`` keyword argument. [#7969]
> astropy.wcs
* Map ITRS frames to terrestrial WCS coordinates. This will make it possible to
use WCSAxes to make figures that combine both celestial and terrestrial
features. An example is plotting the coordinates of an astronomical transient
over an all- sky satellite image to illustrate the position relative to the
Earth at the time of the event. The ITRS frame is identified with WCSs that
use the ``TLON-`` and ``TLAT-`` coordinate types. There are several examples
of WCSs where this syntax is used to describe terrestrial coordinate systems:
Section 7.4.1 of `WCS in FITS "Paper II" <http://adsabs.harvard.edu/abs/2002A%26A...395.1077C>`_
and the `WCSTools documentation <http://tdc-www.harvard.edu/software/wcstools/wcstools.multiwcs.html>`_.
[#6990]
* Added the abstract base class for the low-level WCS API described in APE 14
(https://doi.org/10.5281/zenodo.1188875). [#7325]
* Add ``WCS.contains()`` function to check if the WCS footprint contains a given sky coordinate. [#7273]
* Added the abstract base class for the high-level WCS API described in APE 14
(https://doi.org/10.5281/zenodo.1188875). [#7325]
* Added the high-level wrapper class for low-level WCS objects as described in
APE 14 (https://doi.org/10.5281/zenodo.1188875). [#7326]
* Added a new property ``WCS.has_distortion``. [#7326]
* Deprecated ``_naxis1`` and ``_naxis2`` in favor of ``pixel_shape``. [#7973]
* Added compatibility to wcslib version 6. [#8093]
+ API Changes
> astropy.convolution
* ``kernel`` can now be a tuple. [#7561]
* Not technically an API changes, however, the docstring indicated that ``boundary=None``
was the default when actually it is ``boundary='fill'``. The docstring has been corrected,
however, someone may interpret this as an API change not realizing that nothing has actually
changed. [#7293]
* ``interpolate_replace_nans()`` can no longer accept the keyword argument
``preserve_nan``. It is explicitly set to ``False``. [#8088]
> astropy.coordinates
* Fixed ``astropy.coordinates.concatenate`` to include velocity data in the
concatenation. [#7922]
* Changed the name of the single argument to ``Frame.realize_frame()`` from the
(incorrect) ``representation_type`` to ``data``. [#7923]
* Negative parallaxes passed to ``Distance()`` now raise an error by default
(``allow_negative=False``), or are converted to NaN values with a warning
(``allow_negative=True``). [#7988]
* Negating a ``SphericalRepresentation`` object now changes the angular
coordinates (by rotating 180º) instead of negating the distance. [#7988]
* Creation of new frames now generally creates copies of frame attributes,
rather than inconsistently either copying or making references. [#8204]
* The frame class method ``is_equivalent_frame`` now checks for equality of
components to determine if a frame is the same when it has frame attributes
that are representations, rather than checking if they are the same
object. [#8218]
> astropy.io.ascii
* If a fast reader is explicitly selected (e.g. ``fast_reader='force'``) and
options which are incompatible with the fast reader are provided
(e.g. ``quotechar='##'``) then now a ``ParameterError`` exception will be
raised. [#5578]
* The fast readers will now raise ``InconsistentTableError`` instead of
``CParserError`` if the number of data and header columns do not match.
[#5578]
* Changed a number of ``ValueError`` exceptions to ``InconsistentTableError``
in places where the exception is related to parsing a table which is
inconsistent with the specified table format. Note that
``InconsistentTableError`` inherits from ``ValueError`` so no user code
changes are required. [#7425]
> astropy.io.fits
* The ``fits.table_to_hdu()`` function will translate any column ``format``
attributes to a TDISPn format string, if possible, and store it as a TDISPn
keyword in the ``HDU`` header. [#7226]
> astropy.modeling
* Change the order of the return values from ``FittingWithOutlierRemoval``,
such that ``fitted_model`` comes first, for consistency with other fitters.
For the second value, return only a boolean outlier ``mask``, instead of the
previous ``MaskedArray`` (which included a copy of the input data that was
both redundant and inadvertently corrupted at masked points). Return a
consistent type for the second value when ``niter=0``. [#7407]
* Set the minimum value for the ``bolometric_flux`` parameter of the
``BlackBody1D`` model to zero. [#7045]
> astropy.nddata
* Add two new uncertainty classes, ``astropy.nddata.VarianceUncertainty`` and
``astropy.nddata.InverseVariance``. [#6971]
> astropy.stats
* String values can now be used for the ``cenfunc`` and ``stdfunc``
keywords in the ``SigmaClip`` class and ``sigma_clip`` and
``sigma_clipped_stats`` functions. [#7478]
* The ``SigmaClip`` class and ``sigma_clip`` and
``sigma_clipped_stats`` functions now have a ``masked`` keyword,
which can be used to return either a masked array (default) or an
ndarray with the min/max values. [#7478]
* The ``iters`` keyword has been renamed (and deprecated) to
``maxiters`` in the ``SigmaClip`` class and ``sigma_clip`` and
``sigma_clipped_stats`` functions. [#7478]
> astropy.table
* ``Table.read()`` on a FITS binary table file will convert any TDISPn header
keywords to a Python formatting string when possible, and store it in the
column ``format`` attribute. [#7226]
* No values provided to stack will now raise ``ValueError`` rather than
``TypeError``. [#7674]
> astropy.tests
* ``from astropy.tests.helper import *`` no longer includes
``quantity_allclose``. However,
``from astropy.tests.helper import quantity_allclose`` would still work.
[#7381]
* ``warnings_to_ignore_by_pyver`` option in
``enable_deprecations_as_exceptions()`` now takes ``None`` as key.
Any deprecation message that is mapped to ``None`` will be ignored
regardless of the Python version. [#7790]
> astropy.time
* Added the ability to use ``local`` as time scale in ``Time`` and
``TimeDelta``. [#6487]
* Comparisons, addition, and subtraction of ``Time`` instances with non-time
instances will now return ``NotImplemented`` rather than raise the
``Time``-specific ``OperandTypeError``. This will generally lead to a
regular ``TypeError``. As a result, ``OperandTypeError`` now only occurs if
the operation is between ``Time`` instances of incompatible type or scale.
[#7584]
> astropy.units
* In ``UnitBase.compose()``, if a sequence (list|tuple) is passed in to
``units``, the default for ``include_prefix_units`` is set to
`True`, so that no units get ignored. [#6957]
* Negative parallaxes are now converted to NaN values when using the
``parallax`` equivalency. [#7988]
> astropy.utils
* ``InheritDocstrings`` now also works on class properties. [#7166]
* ``diff_values()``, ``report_diff_values()``, and ``where_not_allclose()``
utility functions are moved from ``astropy.io.fits.diff``. [#7444]
* ``invalidate_caches()`` has been removed from the
``astropy.utils.compat`` namespace, use it directly from ``importlib``. [#7872]
> astropy.visualization
* In ``ImageNormalize``, the default for ``clip`` is set to ``True``. [#7800]
* Changed ``AsymmetricPercentileInterval`` and ``MinMaxInterval`` to
ignore NaN values in arrays. [#7360]
* Automatically default to using ``grid_type='contours'`` in WCSAxes when using
a custom ``Transform`` object if the transform has no inverse. [#7847]
+ Performance Improvements
* Reduced import time by more cautious use of the standard library. [#7647]
> astropy.convolution
* Major performance overhaul to ``convolve()``. [#7293]
* ``convolve()``: Boundaries ``fill``, ``extend``, and ``wrap`` now use a single
implementation that pads the image with the correct boundary values before convolving.
The runtimes of these three were significantly skewed. They now have
equivalent runtimes that are also faster than before due to performant contiguous
memory access. However, this does increase the memory footprint as an entire
new image array is required plus that needed for the padded region.[#7293]
* ``convolve()``: Core computation ported from Cython to C. Several optimization
techniques have been implemented to achieve performance gains, e.g. compiler
hoisting, and vectorization, etc. Compiler optimization level ``-O2`` required for
hoisting and ``-O3`` for vectorization. [#7293]
* ``convolve()``: ``nan_treatment=‘interpolate’`` was slow to compute irrespective of
whether any NaN values exist within the array. The input array is now
checked for NaN values and interpolation is disabled if non are found. This is a
significant performance boost for arrays without NaN values. [#7293]
> astropy.coordinates
* Sped up creating SkyCoord objects by a factor of ~2 in some cases. [#7615]
* Sped up getting xyz vectors from ``CartesianRepresentation`` (which
is used a lot internally). [#7638]
* Sped up transformations and some representation methods by replacing
python code with (compiled) ``erfa`` ufuncs. [#7639]
* Sped up adding differential (velocity) data to representations by a factor of
~20, which improves the speed of frame and SkyCoord initialization. [#7924]
* Refactored ``SkyCoord`` initializer to improve performance and code clarity.
[#7958]
* Sped up initialization of ``Longitude`` by ~40%. [#7616]
> astropy.stats
* The ``SigmaClip`` class and ``sigma_clip`` and
``sigma_clipped_stats`` functions are now significantly faster. [#7478]
* A Cython implementation for `astropy.stats.kuiper_two` and a vectorized
implementation for `astropy.stats.kuiper_false_positive_probability` have
been added, speeding up both functions. [#8104]
> astropy.units
* Sped up creating new composite units, and raising units to some power
[#7549, #7649]
* Sped up Unit.to when target unit is the same as the original unit.
[#7643]
* Lazy-load ``scipy.special`` to shorten ``astropy.units`` import time. [#7636]
> astropy.visualization
* Significantly sped up drawing of contours in WCSAxes. [#7568]
+ Bug Fixes
> astropy.convolution
* Fixed bug in ``convolve_fft`` where masked input was copied with
``numpy.asarray`` instead of ``numpy.asanyarray``.
``numpy.asarray`` removes the mask subclass causing
``numpy.ma.ismasked(input)`` to fail, causing ``convolve_fft``
to ignore all masked input. [#8137]
* Remove function side-effects of input data from ``convolve_fft``.
It was possible for input data to remain modified if particular exceptions
were raised. [#8152]
> astropy.coordinates
* ``EarthLocation.of_address`` now uses the OpenStreetMap geocoding API by
default to retrieve coordinates, with the Google API (which now requires an
API key) as an option. [#7918]
* Fixed a bug that caused frame objects with NaN distances to have NaN sky
positions, even if valid sky coordinates were specified. [#7988]
* Fixed ``represent_as()`` to not round-trip through cartesian if the same
representation class as the instance is passed in. [#7988]
> astropy.io.ascii
* Fixed a problem when ``guess=True`` that ``fast_reader`` options
could be dropped after the first fast reader class was tried. [#5578]
* Units in CDS-formatted tables are now parsed correctly by the units
module. [#7348]
> astropy.io.misc
* Fixed bug when writing a table with masked columns to HDF5. Previously
the mask was being silently dropped. If the ``serialize_meta`` option is
enabled the data mask will now be written as an additional column and the
masked columns will round-trip correctly. [#7481]
* Fixed a bug where writing to HDF5 failed for for tables with columns of
unicode strings. Now those columns are first encoded to UTF-8 and
written as byte strings. [#7024, #8017]
* Fixed a bug with serializing the bounding_box of models initialized
with ``Quantities`` . [#8052]
> astropy.io.fits
* Added support for ``copy.copy`` and ``copy.deepcopy`` for ``HDUList``. [#7218]
* Override ``HDUList.copy()`` to return a shallow HDUList instance. [#7218]
> astropy.modeling
* Fix behaviour of certain models with units, by making certain unit-related
attributes readonly. [#7210]
* Fixed an issue with validating a ``bounding_box`` whose items are
``Quantities``. [#8052]
* Fix ``Moffat1D`` and ``Moffat2D`` derivatives. [#8108]
> astropy.nddata
* Fixed rounding behavior in ``overlap_slices`` for even-sized small
arrays. [#7859]
* Added support for pickling ``NDData`` instances that have an uncertainty.
[#7383]
> astropy.stats
* Fix errors in ``kuiper_false_positive_probability``. [#7975]
> astropy.tests
* Fixing bug that prevented to run the doctests on only a single rst documentation
file rather than all of them. [#8055]
> astropy.time
* Fix a bug when setting a ``TimeDelta`` array item with plain float value(s).
This was always interpreted as a JD (day) value regardless of the
``TimeDelta`` format. [#7990]
> astropy.units
* To simplify fast creation of ``Quantity`` instances from arrays, one can now
write ``array << unit`` (equivalent to ``Quantity(array, unit, copy=False)``).
If ``array`` is already a ``Quantity``, this will convert the quantity to the
requested units; in-place conversion can be done with ``quantity <<= unit``.
[#7734]
> astropy.utils
* Fixed a bug due to which ``report_diff_values()`` was reporting incorrect
number of differences when comparing two ``numpy.ndarray``. [#7470]
* The download progress bar is now only displayed in terminals, to avoid
polluting piped output. [#7577]
* Ignore URL mirror caching when there is no internet. [#8163]
> astropy.visualization
* Right ascension coordinates are now shown in hours by default, and the
``set_format_unit`` method on ``CoordinateHelper`` now works correctly
with angle coordinates. [#7215]
+ Other Changes and Additions
* The documentation build now uses the Sphinx configuration from sphinx-astropy
rather than from astropy-helpers. [#7139]
* Versions of Numpy <1.13 are no longer supported. [#7058]
* Running tests now suppresses the output of the installation stage by default,
to allow easier viewing of the test results. To re-enable the output as
before, use ``python setup.py test --verbose-install``. [#7512]
* The ERFA functions are now wrapped in ufuncs instead of custom C code,
leading to some speed improvements, and setting the stage for allowing
overrides with ``__array_ufunc__``. [#7502]
* Updated the bundled CFITSIO library to 3.450. See
``cextern/cfitsio/docs/changes.txt`` for additional information. [#8014]
* The ``representation`` keywords in coordinate frames are now deprecated in
favor of the ``representation_type`` keywords (which are less
ambiguously named). [#8119]
- Update to 3.0.5
* Update to 3.* is a large step, which contains these main
improvements:
- Full support for velocities in astropy.coordinates
- Support for position updates based on source motion for
SkyCoord objects
- Context managers for versioned constants
- Support for quantities in scipy special functions
- showtable command line script
- Lossless writing and reading mixin columns to HDF5 and
FITS
- Support for FITS time standard
- FITS table performance enhancements
- False alarm probabilities in astropy.stats.LombScargle
- Reading large ASCII files in chunks
- Astropy now only supports Python 3
- pytest plugins moved to external packages
Full changelog is available at http://docs.astropy.org/en/stable/changelog.html
OBS-URL: https://build.opensuse.org/request/show/663419
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-astropy?expand=0&rev=4
2019-01-21 10:47:14 +01:00
|
|
|
|
2020-06-03 09:43:14 +02:00
|
|
|
%if %{with test}
|
2020-07-10 08:26:48 +02:00
|
|
|
%check
|
2020-05-28 09:33:22 +02:00
|
|
|
%ifarch aarch64
|
Accepting request 795557 from home:bnavigator:branches:devel:languages:python:numeric
- Update to 4.0.1.post1
* astropy.config
[gh#astropy/astropy#9975]
Fixed a bug where importing a development version of a package that
uses ``astropy`` configuration system can result in a
``~/.astropy/config/package..cfg`` file.
* astropy.coordinates
[gh#astropy/astropy#9815]
Fixed a bug where a vestigal trace of a frame class could persist in the
transformation graph even after the removal of all transformations involving
that frame class.
[gh#astropy/astropy#9815]
Fixed a bug with ``TransformGraph.remove_transform()`` when the "from" and
"to" frame classes are not explicitly specified.
[gh#astropy/astropy#9900]
Read-only longitudes can now be passed in to ``EarthLocation`` even if
they include angles outside of the range of -180 to 180 degrees.
[gh#astropy/astropy#9980]
```SkyCoord.radial_velocity_correction``` no longer raises an Exception
when space motion information is present on the SkyCoord.
* astropy.io
[gh#astropy/astropy#9866]
Fixed a bug that prevented the unified I/O infrastructure from working with
datasets that are represented by directories rather than files.
* astropy.io.ascii
[gh#astropy/astropy#9918]
Fixed a bug in the ``fast_reader`` C parsers incorrectly returning entries
of isolated positive/negative signs as ``float`` instead of ``str``.
[gh#astropy/astropy#9923]
Fixed a segmentation fault in the ``fast_reader`` C parsers when parsing an
invalid file with ``guess=True`` and the file contains inconsistent column
numbers in combination with a quoted field; e.g., ``"1 2\n 3 4 '5'"``.
[gh#astropy/astropy#9933]
Magnitude, decibel, and dex can now be stored in ``ecsv`` files.
* astropy.io.misc
[gh#astropy/astropy#9933]
Magnitude, decibel, and dex can now be stored in ``hdf5`` files.
[gh#astropy/astropy#9956, gh#astropy/astropy#9961]
Fixed serialization of polynomial models to include non default values of
domain and window values.
[gh#astropy/astropy#9950]
Fixed a bug which affected overwriting tables within ``hdf5`` files.
Overwriting an existing path with associated column meta data now also
overwrites the meta data associated with the table.
[gh#astropy/astropy#9983]
Fixed serialization of Time objects with location under time-1.0.0
ASDF schema.
* astropy.io.fits
[gh#astropy/astropy#9711, gh#astropy/astropy#9934]
Fix regression with ``GroupsHDU`` which needs to modify the header to handle
invalid headers, and fix accesing ``.data`` for empty HDU.
[gh#astropy/astropy#9711]
Fix ``fitsdiff`` when its arguments are directories that contain other
directories.
[gh#astropy/astropy#9958]
Fix writing noncontiguous data to a compressed HDU.
[gh#astropy/astropy#9978]
Added verification of ``disp`` (``TDISP``) keyword to ``fits.Column`` and
extended tests for ``TFORM`` and ``TDISP`` validation.
[gh#astropy/astropy#10012]
Fix checksum verification to process all HDUs instead of only the first one
because of the lazy loading feature.
[gh#astropy/astropy#10030]
Allow passing ``output_verify`` to ``.close`` when using the context manager.
[gh#astropy/astropy#10041]
Prevent instantiation of ``PrimaryHDU`` and ``ImageHDU`` with a scalar.
[gh#astropy/astropy#10069]
Fix column access by attribute with FITS_rec: columns with scaling or columns
from ASCII tables where not properly converted when accessed by attribute
name.
* astropy.io.misc
[gh#astropy/astropy#9933]
Magnitude, decibel, and dex can now be stored in ``hdf5`` files.
[gh#astropy/astropy#9956, gh#astropy/astropy#9961]
Fixed serialization of polynomial models to include non default values of
domain and window values.
[gh#astropy/astropy#9950]
Fixed a bug which affected overwriting tables within ``hdf5`` files.
Overwriting an existing path with associated column meta data now also
overwrites the meta data associated with the table.
[gh#astropy/astropy#9983]
Fixed serialization of Time objects with location under time-1.0.0
ASDF schema.
* astropy.modeling
[gh#astropy/astropy#9987]
Fixed a bug in setting default values of parameters of orthonormal
polynomials when constructing a model set.
* astropy.table
[gh#astropy/astropy#9839]
Fixed bug in ``Table.reverse`` for tables that contain non-mutable mixin columns
(like ``SkyCoord``) for which in-place item update is not allowed.
[gh#astropy/astropy#9933]
Tables containing Magnitude, decibel, and dex columns can now be saved to
``ecsv`` files.
[gh#astropy/astropy#10027]
Fixed bug where adding or inserting a row fails on a table with an index
defined on a column that is not the first one.
[gh#astropy/astropy#10068]
Ensured that ``table.show_in_browser`` also worked for mixin columns like
``Time`` and ``SkyCoord``.
* astropy.time
[gh#astropy/astropy#9679]
Fix inaccuracy when converting between TimeDelta and datetime.timedelta.
[gh#astropy/astropy#9812]
Fixed exception when changing ``format`` in the case when ``out_subfmt`` is
defined and is incompatible with the new format.
[gh#astropy/astropy#9812]
Fixed exceptions in ``Time.to_value()``: when supplying any ``subfmt`` argument
for string-based formats like 'iso', and for ``subfmt='long'`` for the formats
'byear', 'jyear', and 'decimalyear'.
[gh#astropy/astropy#9969]
Fixed bug where the location attribute was lost when creating a new ``Time``
object from an existing ``Time`` or list of ``Time`` objects.
[gh#astropy/astropy#10034]
Fixed a bug where an exception occurred when creating a ``Time`` object
if the ``val1`` argument was a regular double and the ``val2`` argument
was a ``longdouble``.
* astropy.timeseries
[gh#astropy/astropy#10013]
Fixed issue with reference time for the ``transit_time`` parameter returned by
the ``BoxLeastSquares`` periodogram. Now, the ``transit_time`` will be within
the range of the input data and arbitrary time offsets/zero points no longer
affect results.
* astropy.units
[gh#astropy/astropy#9948]
Fix for ``quantity_input`` annotation raising an exception on iterable
types that don't define a general ``__contains__`` for checking if ``None``
is contained (e.g. Enum as of python3.8), by instead checking for instance of
Sequence.
[gh#astropy/astropy#10066]
Fix for ``u.Quantity`` not taking into account ``ndmin`` if constructed from
another ``u.Quantity`` instance with different but convertible unit
* astropy.utils
[gh#astropy/astropy#9981]
Fixed ``deprecated_renamed_argument`` not passing in user value to
deprecated keyword when the keyword has no new name.
[gh#astropy/astropy#9985]
Fixed ``deprecated_renamed_argument`` not issuing a deprecation warning when
deprecated keyword without new name is passed in as positional argument.
[gh#astropy/astropy#10007]
Fixed detection of read-only filesystems in the caching code.
* astropy.visualization
[gh#astropy/astropy#9848]
Fixed bug from matplotlib >=3.1 where an empty Quantity array is
sent for unit conversion as an empty list.
[gh#astropy/astropy#9913]
Fix bug in ``ZScaleInterval`` to return the array minimum and
maximum when there are less then ``min_npixels`` in the input array.
[gh#astropy/astropy#8004, gh#astropy/astropy#9991]
Fix a bug in simplifying axis labels that affected non-rectangular frames.
* Increase minimum asdf version to 2.5.2.
[gh#astropy/astropy#9996, gh#astropy/astropy#9819]
* Updated wcslib to v7.2. [gh#astropy/astropy#10021]
- updated test requirements and recommends
- run pytest directly
OBS-URL: https://build.opensuse.org/request/show/795557
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-astropy?expand=0&rev=23
2020-04-20 19:58:35 +02:00
|
|
|
# doctest failure because of precision errors
|
Accepting request 840965 from home:bnavigator:branches:devel:languages:python:numeric
- Update to 4.0.2
New Features
* astropy.utils
astropy.utils.data.download_file now supports FTPS/FTP over
TLS. [#9964]
astropy.utils.data now uses a lock-free mechanism for caching.
This new mechanism uses a new cache layout and so ignores
caches created using earlier mechanisms (which were causing
lockups on clusters). The two cache formats can coexist but do
not share any files. [#10437, #10683]
astropy.utils.data now ignores the config item
astropy.utils.data.conf.download_cache_lock_attempts since no
locking is done. [#10437, #10683]
astropy.utils.data.download_file and related functions now
interpret the parameter or config file setting timeout=0 to
mean they should make no attempt to download files. [#10437,
#10683]
astropy.utils.import_file_to_cache now accepts a keyword-only
argument replace, defaulting to True, to determine whether it
should replace existing files in the cache, in a way as close
to atomic as possible. [#10437, #10683]
astropy.utils.data.download_file and related functions now
treat http://example.com and http://example.com/ as equivalent.
[#10631]
* astropy.wcs
The new auxiliary WCS parameters added in WCSLIB 7.1 are now
exposed as the aux attribute of Wcsprm. [#10333]
Updated bundled version of WCSLIB to v7.3. [#10433]
Bug fixes
* astropy.config
Added an extra fallback to os.expanduser('~') when trying to
find the user home directory. [#10570]
* astropy.constants
Corrected definition of parsec to 648 000 / pi AU following IAU
2015 B2 [#10569]
* astropy.convolution
Fixed a bug where a float-typed integers in the argument
x_range of astropy.convolution.utils.discretize_oversample_1D
(and the 2D version as well) fails because it uses
numpy.linspace, which requires an int. [#10696]
* astropy.coordinates
Ensure that for size-1 array SkyCoord and coordinate frames the
attributes also properly become scalars when indexed with 0.
[#10113]
Fixed a bug where SkyCoord.separation() and
SkyCoord.separation_3d were not accepting a frame object.
[#10332]
Ensure that the lon values in SkyOffsetFrame are wrapped
correctly at 180 degree regardless of how the underlying data
is represented. [#10163]
Fixed an error in the obliquity of the ecliptic when
transforming to/from the *TrueEcliptic coordinate frames. The
error would primarily result in an inaccuracy in the ecliptic
latitude on the order of arcseconds. [#10129]
Fixed an error in the computation of the location of solar
system bodies where the Earth location of the observer was
ignored during the correction for light travel time. [#10292]
Ensure that coordinates with proper motion that are transformed
to other coordinate frames still can be represented properly.
[#10276]
Improve the error message given when trying to get a cartesian
representation for coordinates that have both proper motion and
radial velocity, but no distance. [#10276]
Fixed an error where SkyCoord.apply_space_motion would return
incorrect results when no distance is set and proper motion is
high. [#10296]
Make the parsing of angles thread-safe so that Angle can be
used in Python multithreading. [#10556]
Fixed reporting of EarthLocation.info which previously raised
an exception. [#10592]
* astropy.io.ascii
Fixed a bug with the C fast_reader not correctly parsing
newlines when delimiter was also set to \n or \r; ensured
consistent handling of input strings without newline
characters. [#9929]
* astropy.io.fits
Fix integer formats of TFORMn=Iw columns in ASCII tables to
correctly read values exceeding int32 - setting int16, int32 or
int64 according to w. [#9901]
Fix unclosed memory-mapped FITS files in FITSDiff when
difference found. [#10159]
Fix crash when reading an invalid table file. [#10171]
Fix duplication issue when setting a keyword ending with space.
[#10482]
Fix ResourceWarning with fits.writeto and pathlib.Path object.
[#10599]
Fix repr for commentary cards and strip spaces for commentary
keywords. [#10640]
Fix compilation of cfitsio with Xcode 12. [#10772]
Fix handling of 1-dimensional arrays with a single element in
BinTableHDU [#10768]
* astropy.io.misc
Fix id URL in baseframe-1.0.0 ASDF schema. [#10223]
Write keys to ASDF only if the value is present, to account for
a change in behavior in asdf 2.8. [#10674]
* astropy.io.registry
Fix Table.(read|write).help when reader or writer has no
docstring. [#10460]
* astropy.io.votable
Fixed parsing failure of VOTable with no fields. When detecting
a non-empty table with no fields, the following warning/
exception is issued: E25 "No FIELDs are defined; DATA section
will be ignored." [#10192]
* astropy.modeling
Fixed a problem with mapping input_units and return_units of a
CompoundModel to the units of the constituent models. [#10158]
Removed hard-coded names of inputs and outputs. [#10174]
Fixed a problem where slicing a CompoundModel by name will
crash if there fix_inputs operators are present. [#10224]
Removed a limitation of fitting of data with units with
compound models without units when the expression involves
operators other than addition and subtraction. [#10415]
Fixed a problem with fitting Linear1D and Planar2D in model
sets. [#10623]
Fixed reported module name of math_functions model classes.
[#10694]
Fixed reported module name of tabular model classes. [#10709]
Do not create new math_functions models for ufuncs that are
only aliases (divide and mod). [#10697]
Fix calculation of the Moffat2D derivative with respect to
gamma. [#10784]
* astropy.stats
Fixed an API regression where SigmaClip.__call__ would convert
masked elements to nan and upcast the dtype to float64 in its
output MaskedArray when using the axis parameter along with the
defaults masked=True and copy=True. [#10610]
Fixed an issue where fully masked MaskedArray input to
sigma_clipped_stats gave incorrect results. [#10099]
Fixed an issue where sigma_clip and SigmaClip.__call__ would
return a masked array instead of a ndarray when masked=False
and the input was a full-masked MaskedArray. [#10099]
Fixed bug with funcs.poisson_conf_interval where an integer for
N with interval='kraft-burrows-nousek' would throw an error
with mpmath backend. [#10427]
Fixed bug in funcs.poisson_conf_interval with interval='kraft-
burrows-nousek' where certain combinations of source and
background count numbers led to ValueError due to the choice of
starting value for numerical optimization. [#10618]
* astropy.table
Fixed a bug when writing a table with mixin columns to FITS,
ECSV or HDF5. If one of the data attributes of the mixin (e.g.
skycoord.ra) had the same name as one of the table column names
(ra), the column (ra) would be dropped when reading the table
back. [#10222]
Fixed a bug when sorting an indexed table on the indexed column
after first sorting on another column. [#10103]
Fixed a bug in table argsort when called with reverse=True for
an indexed table. [#10103]
Fixed a performance regression introduced in #9048 when
initializing a table from Python lists. Also fixed incorrect
behavior (for data types other than float) when those lists
contain np.ma.masked elements to indicate masked data. [#10636]
Avoid modifying .meta when serializing columns to FITS.
[#10485]
Avoid crash when reading a FITS table that contains mixin info
and PyYAML is missing. [#10485]
* astropy.time
Ensure that for size-1 array Time, the location also properly
becomes a scalar when indexed with 0. [#10113]
* astropy.units
Refined test_parallax to resolve difference between 2012 and
2015 definitions. [#10569]
* astropy.utils
The default IERS server has been updated to use the FTPS server
hosted by CDDIS. [#9964]
Fixed memory allocation on 64-bit systems within xml.iterparse
[#10076]
Fix case where None could be used in a numerical computation.
[#10126]
* astropy.visualization
Fixed a bug where the ImageNormalize clip keyword was ignored
when used with calling the object on data. [#10098]
Fixed a bug where axes.xlabel/axes.ylabel where not correctly
set nor returned on an EllipticalFrame class WCSAxes plot.
[#10446]
* astropy.wcs
Handled WCS 360 -> 0 deg crossover in fit_wcs_from_points
[#10155]
Do not issue DATREF warning when MJDREF has default value.
[#10440]
Fixed a bug due to which naxis argument was ignored if header
was supplied during the initialization of a WCS object.
[#10532]
Other Changes and Additions
* Improved the speed of sorting a large Table on a single column
by a factor of around 5. [#10103]
* Ensure that astropy can be used inside Application bundles
built with pyinstaller. [#8795]
* Updated the bundled CFITSIO library to 3.49. See cextern/
cfitsio/docs/changes.txt for additional information. [#10256,
#10665]
* extract_array raises a ValueError if the data type of the input
array is inconsistent with the fill_value. [#10602]
- Drop merged PR patches
* astropy-pr10433-wcslib73-tests.patch gh#astropy/astropy#10433
* astropy-pr10440-wcs-datfix.patch gh#astropy/astropy#10440
- Skip test_compound_fitting_with_units gh#astropy/astropy#10675
OBS-URL: https://build.opensuse.org/request/show/840965
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-astropy?expand=0&rev=34
2020-10-11 12:33:44 +02:00
|
|
|
donttest+=" or bayesian_info_criterion_lsq"
|
Accepting request 795557 from home:bnavigator:branches:devel:languages:python:numeric
- Update to 4.0.1.post1
* astropy.config
[gh#astropy/astropy#9975]
Fixed a bug where importing a development version of a package that
uses ``astropy`` configuration system can result in a
``~/.astropy/config/package..cfg`` file.
* astropy.coordinates
[gh#astropy/astropy#9815]
Fixed a bug where a vestigal trace of a frame class could persist in the
transformation graph even after the removal of all transformations involving
that frame class.
[gh#astropy/astropy#9815]
Fixed a bug with ``TransformGraph.remove_transform()`` when the "from" and
"to" frame classes are not explicitly specified.
[gh#astropy/astropy#9900]
Read-only longitudes can now be passed in to ``EarthLocation`` even if
they include angles outside of the range of -180 to 180 degrees.
[gh#astropy/astropy#9980]
```SkyCoord.radial_velocity_correction``` no longer raises an Exception
when space motion information is present on the SkyCoord.
* astropy.io
[gh#astropy/astropy#9866]
Fixed a bug that prevented the unified I/O infrastructure from working with
datasets that are represented by directories rather than files.
* astropy.io.ascii
[gh#astropy/astropy#9918]
Fixed a bug in the ``fast_reader`` C parsers incorrectly returning entries
of isolated positive/negative signs as ``float`` instead of ``str``.
[gh#astropy/astropy#9923]
Fixed a segmentation fault in the ``fast_reader`` C parsers when parsing an
invalid file with ``guess=True`` and the file contains inconsistent column
numbers in combination with a quoted field; e.g., ``"1 2\n 3 4 '5'"``.
[gh#astropy/astropy#9933]
Magnitude, decibel, and dex can now be stored in ``ecsv`` files.
* astropy.io.misc
[gh#astropy/astropy#9933]
Magnitude, decibel, and dex can now be stored in ``hdf5`` files.
[gh#astropy/astropy#9956, gh#astropy/astropy#9961]
Fixed serialization of polynomial models to include non default values of
domain and window values.
[gh#astropy/astropy#9950]
Fixed a bug which affected overwriting tables within ``hdf5`` files.
Overwriting an existing path with associated column meta data now also
overwrites the meta data associated with the table.
[gh#astropy/astropy#9983]
Fixed serialization of Time objects with location under time-1.0.0
ASDF schema.
* astropy.io.fits
[gh#astropy/astropy#9711, gh#astropy/astropy#9934]
Fix regression with ``GroupsHDU`` which needs to modify the header to handle
invalid headers, and fix accesing ``.data`` for empty HDU.
[gh#astropy/astropy#9711]
Fix ``fitsdiff`` when its arguments are directories that contain other
directories.
[gh#astropy/astropy#9958]
Fix writing noncontiguous data to a compressed HDU.
[gh#astropy/astropy#9978]
Added verification of ``disp`` (``TDISP``) keyword to ``fits.Column`` and
extended tests for ``TFORM`` and ``TDISP`` validation.
[gh#astropy/astropy#10012]
Fix checksum verification to process all HDUs instead of only the first one
because of the lazy loading feature.
[gh#astropy/astropy#10030]
Allow passing ``output_verify`` to ``.close`` when using the context manager.
[gh#astropy/astropy#10041]
Prevent instantiation of ``PrimaryHDU`` and ``ImageHDU`` with a scalar.
[gh#astropy/astropy#10069]
Fix column access by attribute with FITS_rec: columns with scaling or columns
from ASCII tables where not properly converted when accessed by attribute
name.
* astropy.io.misc
[gh#astropy/astropy#9933]
Magnitude, decibel, and dex can now be stored in ``hdf5`` files.
[gh#astropy/astropy#9956, gh#astropy/astropy#9961]
Fixed serialization of polynomial models to include non default values of
domain and window values.
[gh#astropy/astropy#9950]
Fixed a bug which affected overwriting tables within ``hdf5`` files.
Overwriting an existing path with associated column meta data now also
overwrites the meta data associated with the table.
[gh#astropy/astropy#9983]
Fixed serialization of Time objects with location under time-1.0.0
ASDF schema.
* astropy.modeling
[gh#astropy/astropy#9987]
Fixed a bug in setting default values of parameters of orthonormal
polynomials when constructing a model set.
* astropy.table
[gh#astropy/astropy#9839]
Fixed bug in ``Table.reverse`` for tables that contain non-mutable mixin columns
(like ``SkyCoord``) for which in-place item update is not allowed.
[gh#astropy/astropy#9933]
Tables containing Magnitude, decibel, and dex columns can now be saved to
``ecsv`` files.
[gh#astropy/astropy#10027]
Fixed bug where adding or inserting a row fails on a table with an index
defined on a column that is not the first one.
[gh#astropy/astropy#10068]
Ensured that ``table.show_in_browser`` also worked for mixin columns like
``Time`` and ``SkyCoord``.
* astropy.time
[gh#astropy/astropy#9679]
Fix inaccuracy when converting between TimeDelta and datetime.timedelta.
[gh#astropy/astropy#9812]
Fixed exception when changing ``format`` in the case when ``out_subfmt`` is
defined and is incompatible with the new format.
[gh#astropy/astropy#9812]
Fixed exceptions in ``Time.to_value()``: when supplying any ``subfmt`` argument
for string-based formats like 'iso', and for ``subfmt='long'`` for the formats
'byear', 'jyear', and 'decimalyear'.
[gh#astropy/astropy#9969]
Fixed bug where the location attribute was lost when creating a new ``Time``
object from an existing ``Time`` or list of ``Time`` objects.
[gh#astropy/astropy#10034]
Fixed a bug where an exception occurred when creating a ``Time`` object
if the ``val1`` argument was a regular double and the ``val2`` argument
was a ``longdouble``.
* astropy.timeseries
[gh#astropy/astropy#10013]
Fixed issue with reference time for the ``transit_time`` parameter returned by
the ``BoxLeastSquares`` periodogram. Now, the ``transit_time`` will be within
the range of the input data and arbitrary time offsets/zero points no longer
affect results.
* astropy.units
[gh#astropy/astropy#9948]
Fix for ``quantity_input`` annotation raising an exception on iterable
types that don't define a general ``__contains__`` for checking if ``None``
is contained (e.g. Enum as of python3.8), by instead checking for instance of
Sequence.
[gh#astropy/astropy#10066]
Fix for ``u.Quantity`` not taking into account ``ndmin`` if constructed from
another ``u.Quantity`` instance with different but convertible unit
* astropy.utils
[gh#astropy/astropy#9981]
Fixed ``deprecated_renamed_argument`` not passing in user value to
deprecated keyword when the keyword has no new name.
[gh#astropy/astropy#9985]
Fixed ``deprecated_renamed_argument`` not issuing a deprecation warning when
deprecated keyword without new name is passed in as positional argument.
[gh#astropy/astropy#10007]
Fixed detection of read-only filesystems in the caching code.
* astropy.visualization
[gh#astropy/astropy#9848]
Fixed bug from matplotlib >=3.1 where an empty Quantity array is
sent for unit conversion as an empty list.
[gh#astropy/astropy#9913]
Fix bug in ``ZScaleInterval`` to return the array minimum and
maximum when there are less then ``min_npixels`` in the input array.
[gh#astropy/astropy#8004, gh#astropy/astropy#9991]
Fix a bug in simplifying axis labels that affected non-rectangular frames.
* Increase minimum asdf version to 2.5.2.
[gh#astropy/astropy#9996, gh#astropy/astropy#9819]
* Updated wcslib to v7.2. [gh#astropy/astropy#10021]
- updated test requirements and recommends
- run pytest directly
OBS-URL: https://build.opensuse.org/request/show/795557
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-astropy?expand=0&rev=23
2020-04-20 19:58:35 +02:00
|
|
|
%endif
|
2021-08-05 21:04:41 +02:00
|
|
|
%ifarch %arm32
|
|
|
|
# gh#astropy/astropy#12017
|
|
|
|
donttest+=" or test_stats"
|
|
|
|
%endif
|
2020-10-23 13:32:38 +02:00
|
|
|
testselect_expr="${donttest:+-k \"not (${donttest# or })\"}"
|
2020-07-10 08:26:48 +02:00
|
|
|
# http://docs.astropy.org/en/latest/development/testguide.html#running-tests
|
|
|
|
# running pytest directly would require building the extensions inplace
|
2021-04-17 17:31:35 +02:00
|
|
|
%{python_exec -B -c "
|
2020-10-23 13:32:38 +02:00
|
|
|
import sys, astropy
|
|
|
|
pytestargs = ('-v '
|
|
|
|
'-n auto ' # pytest-xdist
|
|
|
|
'-p no:cacheprovider '
|
|
|
|
'--hypothesis-profile=obs '
|
2020-11-29 12:14:16 +01:00
|
|
|
'$testselect_expr')
|
2020-10-23 13:32:38 +02:00
|
|
|
returncode = astropy.test(args=pytestargs)
|
|
|
|
sys.exit(returncode)
|
2021-04-17 17:31:35 +02:00
|
|
|
"}
|
2020-06-03 09:43:14 +02:00
|
|
|
%endif
|
2017-08-24 18:28:41 +02:00
|
|
|
|
2020-06-03 09:43:14 +02:00
|
|
|
%if !%{with test}
|
2020-05-28 09:33:22 +02:00
|
|
|
%post
|
2020-07-10 08:26:48 +02:00
|
|
|
%{expand:%(for b in %{binaries}; do echo "%%python_install_alternative $b"; done)}
|
2020-05-28 09:33:22 +02:00
|
|
|
|
|
|
|
%postun
|
2020-07-10 08:26:48 +02:00
|
|
|
%{expand:%(for b in %{binaries}; do echo "%%python_uninstall_alternative $b"; done)}
|
2020-05-28 09:33:22 +02:00
|
|
|
|
2017-08-24 18:28:41 +02:00
|
|
|
%files %{python_files}
|
|
|
|
%doc CHANGES.rst README.rst
|
2020-10-23 13:32:38 +02:00
|
|
|
%license LICENSE.rst licenses/*
|
2020-07-10 08:26:48 +02:00
|
|
|
%{expand:%(for b in %{binaries}; do echo "%%python_alternative %%{_bindir}/$b"; done)}
|
2017-08-24 18:28:41 +02:00
|
|
|
%{python_sitearch}/astropy/
|
2020-10-23 13:32:38 +02:00
|
|
|
%{python_sitearch}/astropy-%{version}*-info
|
2020-06-03 09:43:14 +02:00
|
|
|
%endif
|
2017-08-24 18:28:41 +02:00
|
|
|
|
|
|
|
%changelog
|