- Update to 6.1.3
## Bug Fixes
### astropy.io.fits
* Fix reading zero-width columns such as 0A fields. [#16894]
* Ensure that QTable, like Table, can read zero-length string
columns, and not convert them to length 1 strings. In the
process, avoid a needless copy of all the data for QTable.
[#16898]
### astropy.io.votable
* Fix KeyError when parsing certain VOTables. [#16830]
### astropy.modeling
* Fixed the fit_deriv calculations in the Lorentz1D model.
[#16794]
### astropy.table
* Pretty-printing of Tables now also works in the presence of
zero-length string columns (which sometimes are present in FITS
tables). [#16898]
### astropy.utils
* Fix the return type for np.broadcast_arrays on a single Masked
instance: it now correctly returns a 1-element sequence instead
of a single array, just like would be the case with a regular
array. [#16842]
### astropy.wcs
* Fix a bug where wcs_info_str’s results would look different in
numpy 2 VS numpy 1. [#16586]
## Other Changes and Additions
* The minimum required version of PyArrow is now v7.0.0. [#16785] (forwarded request 1197897 from bnavigator)
OBS-URL: https://build.opensuse.org/request/show/1197898
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-astropy?expand=0&rev=57
## Bug Fixes
### astropy.io.fits
* Fix reading zero-width columns such as 0A fields. [#16894]
* Ensure that QTable, like Table, can read zero-length string
columns, and not convert them to length 1 strings. In the
process, avoid a needless copy of all the data for QTable.
[#16898]
### astropy.io.votable
* Fix KeyError when parsing certain VOTables. [#16830]
### astropy.modeling
* Fixed the fit_deriv calculations in the Lorentz1D model.
[#16794]
### astropy.table
* Pretty-printing of Tables now also works in the presence of
zero-length string columns (which sometimes are present in FITS
tables). [#16898]
### astropy.utils
* Fix the return type for np.broadcast_arrays on a single Masked
instance: it now correctly returns a 1-element sequence instead
of a single array, just like would be the case with a regular
array. [#16842]
### astropy.wcs
* Fix a bug where wcs_info_str’s results would look different in
numpy 2 VS numpy 1. [#16586]
## Other Changes and Additions
* The minimum required version of PyArrow is now v7.0.0. [#16785]
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-astropy?expand=0&rev=137
- Don't require numpy 2.
- update to 6.1.2:
* When reading CDS and MRT files, only interpret a line as a
section delimiter if it contains exclusively dashes or equal
signs. This enables rows starting with dashes.
* Fix a spurious exception when reading integer compressed
images with blanks.
* Fixed a crash that occurred for files opened via
fits.open(..., mode='update'), on Windows, and with numpy 2.0
installed. A warning is now emitted in cases most likely to
escalate into undefined behavior (e.g., segfaults), i.e.,
when a closed memory map object is still referenced by
external code. Please report any regression found.
* Fixed a bug that caused models returned by non-linear fitters
to have sync_constraints set to False, which caused
constraints accessed through, e.g., Model.fixed to not be in
sync with the fixed attribute of the parameters.
* Fixed a bug that caused CompoundModel.without_units_for_data
to return an incorrectly constructed model when the compound
model contained a * or / operation, and which also caused
fitting to not work correctly with compound models that
contained * or / operations.
* The OGIP parser is now less restrictive with strings that
represent a unit that includes the sqrt function. For
example, u.Unit("sqrt(m)**3", format="ogip") no longer causes
a ValueError.
* Fixed an edge-case bug in overlap_slices where the function
could return an empty slice for non-overlapping slices.
* Fixed a WCSAxes bug when overlaying a frame with default
OBS-URL: https://build.opensuse.org/request/show/1194255
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-astropy?expand=0&rev=56
- Restrict numpy to < 2.
features since the 4.0.x series of releases. In particular, this
* A new SpectralCoord class for representing and transforming
* Support for in-place setting of array-valued SkyCoord and frame
* Change in the definition of equality comparison for coordinate
* Support for units on otherwise unitless models via the
which are first time contributors to Astropy
* astropy.table
Fixed a small bug where initializing an empty `Column`
with a structured dtype with a length and a shape
* Fixed installation of the source distribution with
astropy.utils.data.download_file now supports FTPS/FTP over
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
astropy.utils.data now ignores the config item
astropy.utils.data.conf.download_cache_lock_attempts since no
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,
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
astropy.utils.data.download_file and related functions now
treat http://example.com and http://example.com/ as equivalent.
The new auxiliary WCS parameters added in WCSLIB 7.1 are now
Added an extra fallback to os.expanduser('~') when trying to
Corrected definition of parsec to 648 000 / pi AU following IAU
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-astropy?expand=0&rev=132
* When reading CDS and MRT files, only interpret a line as a
section delimiter if it contains exclusively dashes or equal
signs. This enables rows starting with dashes.
* Fix a spurious exception when reading integer compressed
images with blanks.
* Fixed a crash that occurred for files opened via
fits.open(..., mode='update'), on Windows, and with numpy 2.0
installed. A warning is now emitted in cases most likely to
escalate into undefined behavior (e.g., segfaults), i.e.,
when a closed memory map object is still referenced by
external code. Please report any regression found.
* Fixed a bug that caused models returned by non-linear fitters
to have sync_constraints set to False, which caused
constraints accessed through, e.g., Model.fixed to not be in
sync with the fixed attribute of the parameters.
* Fixed a bug that caused CompoundModel.without_units_for_data
to return an incorrectly constructed model when the compound
model contained a * or / operation, and which also caused
fitting to not work correctly with compound models that
contained * or / operations.
* The OGIP parser is now less restrictive with strings that
represent a unit that includes the sqrt function. For
example, u.Unit("sqrt(m)**3", format="ogip") no longer causes
a ValueError.
* Fixed an edge-case bug in overlap_slices where the function
could return an empty slice for non-overlapping slices.
* Fixed a WCSAxes bug when overlaying a frame with default
units that are not degrees.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-astropy?expand=0&rev=131
- Update to 6.1.1:
* Let fitsdiff compare files with lower case HIERARCH keywords
* Fix writing a ``HDUList`` to file when numpy 2 is installed and at least
some of the data is represented as dask arrays.
* Fix display of diff reports with numpy 2.
* Ensure that also zero-length tables preserve whether integer data are
signed or unsigned.
* Fix YAML table serialization compatibility with numpy 2.
* Fix bugs in io.votable related to numpy 2's representation of scalars.
* Ensure that return types from ``sigma_clip`` ``cenfunc`` and ``stdfunc``
are np.float64 for scalar values.
* Ensure structured ``MaskedColumn`` are serialized correctly, including
the mask.
* Fix problems converting Pandas Series to ``Table`` with numpy >=2.0.
* Ensure Time in ymdhms format can also be serialized to files as part of a
table if it is masked.
* Ensure Masked versions of ``np.recarray`` will show the correct class
name of ``MaskedRecarray`` in their ``repr``, and that they will be
serialized correctly if part of a table.
* Fix bugs with how masked structured arrays were represented with numpy 2.
* ``MaskedQuantity`` now works properly with ``np.block``.
* Fix a bug where ``WCSAxes`` could be missing negative signs on axis
labels when using matplotlib's ``usetex`` mode.
* Fix compilation with gcc 14, avoid implicit pointer conversions.
- Drop patch 16450.patch, included upstream.
- Remove upper bound on pytest, no longer required.
OBS-URL: https://build.opensuse.org/request/show/1183096
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-astropy?expand=0&rev=54
* Let fitsdiff compare files with lower case HIERARCH keywords
* Fix writing a ``HDUList`` to file when numpy 2 is installed and at least
some of the data is represented as dask arrays.
* Fix display of diff reports with numpy 2.
* Ensure that also zero-length tables preserve whether integer data are
signed or unsigned.
* Fix YAML table serialization compatibility with numpy 2.
* Fix bugs in io.votable related to numpy 2's representation of scalars.
* Ensure that return types from ``sigma_clip`` ``cenfunc`` and ``stdfunc``
are np.float64 for scalar values.
* Ensure structured ``MaskedColumn`` are serialized correctly, including
the mask.
* Fix problems converting Pandas Series to ``Table`` with numpy >=2.0.
* Ensure Time in ymdhms format can also be serialized to files as part of a
table if it is masked.
* Ensure Masked versions of ``np.recarray`` will show the correct class
name of ``MaskedRecarray`` in their ``repr``, and that they will be
serialized correctly if part of a table.
* Fix bugs with how masked structured arrays were represented with numpy 2.
* ``MaskedQuantity`` now works properly with ``np.block``.
* Fix a bug where ``WCSAxes`` could be missing negative signs on axis
labels when using matplotlib's ``usetex`` mode.
* Fix compilation with gcc 14, avoid implicit pointer conversions.
- Drop patch 16450.patch, included upstream.
- Remove upper bound on pytest, no longer required.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-astropy?expand=0&rev=124
- Update to 6.1.0
## Highlights
* Updated minimum Python version to 3.10
* Order-dependent angular separations now come with warnings
* io.ascii uses 64-integers by default for integer columns
* Changes to semantics of copy= keyword arguments
* Cosmology is now a dataclass()
## New Features
### astropy.coordinates
* BaseCoordinateFrame now has a position_angle() method, which is
the same as the position_angle method of SkyCoord instances.
[#15737]
* By default the SkyCoord and BaseCoordinateFrame separation()
methods now emit a warning if they have to perform a coordinate
transformation that is not a pure rotation to inform the user
that the angular separation can depend on the direction of the
transformation. It is possible to modify this behaviour with
the new optional keyword-only origin_mismatch argument.
Specifying origin_mismatch="ignore" allows any transformation
to succeed without warning, which has been the behaviour so
far. origin_mismatch="error" forbids all transformations that
are not pure rotations. [#16246]
### astropy.io.ascii
* Clearer error message in reading ASCII tables when there is a
mismatch between converter type and column type. [#15991]
### astropy.io.registry
* The module astropy.io.typing has been added to provide type
annotations for I/O-related functionality. [#15916]
### astropy.samp
* SAMP web profile CORS HTTP server implements Private Network
Access proposal. [#16193]
### astropy.table
* Table now has a setdefault() method, analogous to
dict.setdefault(). [#16188]
### astropy.units
* Added a new module astropy.units.typing that provides support
for type annotations related to astropy.units. [#15860]
* Added a new CGS unit Oersted. [#15962]
* Added “surface brightness”, “surface brightness wav”, “photon
surface brightness”, and “photon surface brightness wav” to
recognized physical types. [#16032]
* Added magnetic helicity as a physical type. [#16101]
### astropy.utils
* For gufuncs on Masked instances, add support for the axes
argument. [#16121]
* Masked instances now support the various numpy array set
operations, such as np.unique and np.isin. [#16224]
### astropy.wcs
* Added support for slicing WCS objects containing cpdis or
det2im distortions, which previously were ignored. [#16163]
## API Changes
### astropy.coordinates
* The astropy.coordinates.transformations module has been
refactored into a module. There should be no user-visible
changes, but if you notice any, please open an Issue. [#15895]
* Changed the default value of the copy argument in
astropy.coordinates.representation.CylindricalDifferential.__init__
from False to True, which is the intended behaviour for all
subclasses of
astropy.coordinates.representation.BaseDifferential. [#16198]
### astropy.cosmology
* Cosmology and its subclasses are now frozen dataclass objects.
[#15484]
* The argument verbose in the function z_at_value is now
keyword-only. [#15855]
### astropy.io.ascii
* The io.ascii Python and C table readers were updated to use a
64-bit integer field by default when reading a column of
integer numeric data. This changes the default behavior on
Windows and potentially 32-bit architectures. Previously on
those platforms, table columns with any long integers which
overflowed the 32-bit integer would be returned as string
columns. The new default behavior is consistent with numpy v2
and pandas. [#16005]
* The parallel fast-reader parser for reading ASCII files has
been removed. Since astropy v4.0.4 requesting this option has
issued a warning that this option is broken and that the serial
parser will be used. The parallel key in the fast_reader
argument for reading ASCII tables is no longer available.
[#16103]
### astropy.table
* show_in_notebook is deprecated and it is recommended to use
dedicated tools in the Jupyter ecosystem to create interactive
plots in notebooks. [#15905]
* A warning is now emitted when Quantity values are inserted into
empty Column objects via Table.insert_row or Table.add_row.
[#16038]
* show_in_browser is deprecated (pending feedback from the
community). Please use astropy/astropy#16067 if you are
actively using the function. [#16068]
* TableColumns.setdefault() and TableColumns.update() methods
(which would typically be called as Table.columns.setdefault()
and Table.columns.update()) have been deprecated because they
can easily corrupt the Table instance the TableColumns instance
is attached to. The Table.setdefault() and Table.update()
methods are safe. [#16154]
### astropy.time
* TIME_FORMATS and TIME_DELTA_FORMATS in astropy.time.formats are
changed from OrderedDict to Python dict. [#15491]
* A FutureWarning is now emitted when mutating Time.location
post-initialization. [#16063]
* Following the removal of np.ndarray.ptp in Numpy v2, Time.ptp
is now deprecated in favor of np.ptp. [#16212]
### astropy.units
* If any iterable such as a list of tuple was input to Quantity,
a check was done to see if they contained only quantities, and,
if so, the quantities were concatenated. This makes sense for
list and tuple, but is not necessarily logical for all
iterables and indeed was broken for those that do not have a
length (such as array_api array instances). Hence, the check
will now be done only for values where it makes sense, i.e.,
instances of list and tuple. [#15752]
* Units now exposes get_converter which returns a function that
will convert a scalar or array from one unit to another. This
can be useful to speed up code that converts many quantities
with the same unit to another one, especially if the quantity
has not many elements, so that the overhead of creating a
conversion function is relatively large. [#16139]
### astropy.utils
* Deprecate importing ErfaError and ErfaWarning from
astropy.utils.exceptions. They should be imported directly from
erfa instead. [#15777]
* introspection.isinstancemethod() and
introspection.find_mod_objs() are deprecated. [#15934]
* astropy.utils.console.terminal_size is now deprecated in favour
of shutil.get_terminal_size from the standard library. [#16045]
* indent() is deprecated. Use textwrap.indent() from Python
standard library instead. [#16223]
* Unmasked Masked scalar instances are now considered hashable,
to match the implicit behaviour of regular arrays, where if an
operation leads to a scalar, a hashable array scalar is
returned. [#16224]
### astropy.visualization
* Renamed the min_cut and max_cut keywords in simple_norm and
fits2bitmap to vmin and vmax. The old names are deprecated.
[#15621]
* If vmin == vmax, the ImageNormalize class now maps the input
data to 0. If vmin > vmax, the ImageNormalize class now raises
a ValueError. [#15622]
## Bug Fixes
### astropy.convolution
* Avoid a segfault when calling astropy.convolution.convolve on
an empty array. An exception is now raised instead. [#15840]
### astropy.coordinates
* Previously passing a SkyCoord instance to the
BaseCoordinateFrame separation() or separation_3d() methods
could produce wrong results, depending on what additional frame
attributes were defined on the SkyCoord, but now SkyCoord input
can be used safely. [#15659]
* Distance now accepts as parallax any angle-like value. This
includes types like Column which have a unit but are not
Quantity subclasses. [#15712]
* The new default for the class method SkyCoord.from_name() is to
look for coordinates first in SIMBAD, then in NED, and then in
VizieR, instead of having no specific order. [#16046]
* Fix Angle.to_string() for angles in degrees represented in
‘hms’ and angles in hours represented in ‘dms’. [#16085]
* Fix a bug where SkyCoord.spherical_offsets_by would crash when
a wrap was needed. [#16241]
* search_around_3d() now always raises a UnitConversionError if
the units of the distances in coord1 and coord2 and the unit of
distlimit do not agree. Previously the error was not raised if
at least one of the coordinates was empty. [#16280]
### astropy.cosmology
* Fixed a bug where the attribute ParametersAttribute.attr_name
could be None instead of a string. [#15882]
### astropy.io.ascii
* Reading of CDS header files with multi-line descriptions where
the continued line started with a number was broken. This is
now fixed. [#15617]
* Ensure that the names of mixin columns are properly propagated
as labels for the MRT format. [#15848]
* Fixed reading IPAC tables for long column type on some
platforms, e.g., Windows. [#16005]
### astropy.io.fits
* Avoid WinError 1455 in opening some large files with memory
mapping on windows. [#15388]
* Fix TDISP parsing for floating numbers. [#16007]
* Fix a crash when calling FITS writeto methods with stdout as
the output stream. [#16008]
* Fix TDISP parsing for floating numbers in formats ES / EN.
[#16015]
* Fix conversion of Table to BinTableHDU with
character_as_bytes=True. [#16358]
* Improved error message when instantiating a fits table with an
ill-formed array. [#16363]
### astropy.io.misc
* Reading an empty table stored in parquet format now creates an
empty table instead of raising an unexpected error. [#16237]
### astropy.io.votable
* When reading a VOTable, if some user-requested columns were not
present then the resulting error message previously listed all
the requested column names. Now only columns that are actually
missing are shown. [#15956]
### astropy.stats
* Fix a spurious warning when calling sigma_clipped_stats on a
MaskedColumn. [#15844]
### astropy.table
* Fix a Table bug when setting items (via slice or index list) in
a bytes type MaskedColumn would cause the column mask to be set
to all False. A common way to trigger this bug was reading a
FITS file with masked string data and then sorting the table.
[#15669]
* Fix slicing logic for Row. Previously, slicing a
astropy.table.row.Row object would incorrectly return a column,
now it correctly returns a list of values from that row.
[#15733]
* Fix a ValueError raised by table.join when fed with large
tables. This would typically happen in situations when the
result joined table would be too large to fit in memory. In
those situations, the error message is now much more clearly
about the necessary memory size. [#15734]
* Fix an unintended exception being raised when attempting to
compare two unequal Table instances. [#15845]
* Ensure that if a Column is initialized with a Quantity it will
use by default a possible name defined on the quantity’s .info.
[#15848]
* Fix a bug where columns with dtype=object wouldn’t be properly
deep-copied using copy.deepcopy. [#15871]
* Fix hasattr(Table, "iloc") raising an exception, preventing use
of tables e.g. with scikit-learn. [#15913]
* Calling Table.group_by on an empty table no longer raises an
exception. [#16093]
* The unit conversion convert_unit_to with MaskedColumn was
broken as it was storing the old unit in a dictionary attached
to underlying np.ma.MaskedArray. This fixes it by overwriting
the old unit after unit conversion. [#16118]
* astropy.table.vstack will no longer modify the input list even
when it contains non-Table objects like astropy.table.Row.
[#16130]
* Update old dataTables.js version. This should not affect the
end user. [#16315]
### astropy.time
* Fix comparing NaN Quantity with TimeDelta object. [#15830]
* Scalar Time instances are now hashable if they are not masked,
also if one uses Masked internally, matching the behaviour
prior to astropy 6.0 (and the current behaviour when masking
using np.ma.MaskedArray). [#16224]
### astropy.units
* Fix rare signature incompatibilities between helper and helped
array functions. Most involve cases where the corresponding
numpy function has had its arguments renamed between numpy
versions. Since all those generally changed the first
arguments, which are typically passed as positional arguments,
this should not affect user code. Affected functions: -
numpy.array_str - numpy.choose - numpy.convolve -
numpy.correlate - numpy.histogram - numpy.histogramdd -
numpy.histogram2d - numpy.isin - numpy.inner - numpy.nanmedian
- numpy.unique - numpy.matrix_rank - numpy.unwrap - numpy.vdot
- numpy.lib.recfunctions.unstructured_to_structured [#15710]
* Fix an issue with unicode string representations of units shown
as superscripts (like degree) when raised to some power. Like
for LaTeX representations, now the superscript unicode
character is replaced by the literal short name before adding
the power. [#15755]
* Fix a missing Sun unit in the list of VOUnits simple_units.
[#15832]
* Fix an unhelpful TypeError when attempting truediv, lshift (<<)
or mul (*) or truediv (/) with a Unit for right operand and a
numpy array with non-numerical dtype for left operand. [#15883]
* Fix write/read roundtrips with empty Table dumped to ECSV.
[#15885]
* Fix a bug where LaTeX formatter would return empty strings for
unity (1) input. [#15923]
* Fix extraneous space in LaTeX repr for Quantity objects with
superscript units (e.g. angles or temperatures in degree
Celsius). [#16043]
* Ensure powers of units are consistently as simple as possible.
So, an integer if possible, otherwise a float, or a fraction if
the float is really close to that. This also ensures the hash
of a unit is unique for any given unit (previously, the same
power could be represented as float, int or fraction, which
made the hash different). [#16058]
* Ensure that find_equivalent_units only returns actual units,
not units that raised to some power match the requested one.
With this fix, (u.m**-3).find_equivalent_units() properly finds
nothing, rather than all units of length. [#16127]
* Using a dimensionless Quantity as an exponent works anew. In
astropy 6.0.1 an exception was erroneously raised. [#16261]
### astropy.utils
* Fix rare signature incompatibilities between helper and helped
array functions. These typically cover corner cases and should
not affect user code. Some arguments weren’t being re-exposed
correctly or at all, depending on numpy’s version. Affected
functions: - numpy.broadcast_arrays - numpy.median -
numpy.quantile - numpy.empty_like - numpy.ones_like -
numpy.zeros_like - numpy.full_like [#16025]
* Fix a bug where astropy.utils.console.Spinner would leak
newlines for messages longer than terminal width. [#16040]
* Update report_diff_values so the diff no longer depends on the
console terminal size. [#16065]
* Fix support in Masked for generalized ufuncs with more than a
single core dimension (such as erfa.rxp). [#16120]
* Masked array instances now deal more properly with structured
dtypes, combining field masks to get element masks for
generalized ufuncs, and allowing .view() any time the mask can
be viewed as well. This allows a larger number of erfa routines
to work with masked data. [#16125]
### astropy.visualization
* WCSAxes will correctly set certain defaults when
wcs.world_axis_physical_types contains custom: prefixes.
[#15626]
* Fix an edge case where quantity_support would produce duplicate
tick labels for small data ranges. [#15841]
* Fix a bug where AngleFormatterLocator and
ScalarFormatterLocator wouldn’t respect matplotlib.rc’s
axes.unicode_minus parameter. [#15902]
* Fixed a bug in CoordinateHelper.grid method to properly handle
draw_grid=False and draw_grid=None, ensuring grid lines are
controlled correctly even when not explicitly called. [#15985]
### astropy.wcs
* Updated bundled WCSLIB version to 8.2.2. This update fixes
character buffer overflows in the comment string for the
longitude and latitude axes triggered by some projections in
wcshdo(), and also the formatting for generic coordinate
systems. For a full list of changes - see
http://www.atnf.csiro.au/people/mcalabre/WCS/CHANGES or
astropy/cextern/wcslib/CHANGES [#15795]
* Fixed a bug in fit_wcs_from_points that does not set the
default value of the cdelt of the returned WCS object. [#16027]
* Fixed a bug in DistortionLookupTable (which implements cpdis
and det2im projection corrections to a WCS) in which image
pixels received an incorrect distortion value, from a location
in the lookup table incorrectly offset by about 1 table pixel.
[#16163]
## Other Changes and Additions
* Update minimum supported Python version to 3.10 [#15603]
* The minimum required NumPy version is now 1.23 and the minimum
required SciPy version is 1.8. [#15706]
* Fix loading parser tabs on pyc-only installations.
* Fix a bug in the wrappers for the lex and yacc wrappers that
are used for parsing Astropy units so that they work on
pyc-only installations.
* According to the Python module loading flow chart, when
evaluating import foo and foo.py is not found, Python then
reads foo.pyc.
* One can take advantage of this fact to strip source files and
leave only Python bytecode files for deployment
inspace-constrained execution environments such as AWS Lambda.
Astropy is now compatible with pyc-only deployments. [#16159]
* Change the default value of copy arguments in public APIs from
False to None if Numpy 2.0 or newer is installed. For details,
see the “Copy semantics” section on the What’s New page for
Astropy 6.1 . [#16181]
OBS-URL: https://build.opensuse.org/request/show/1171972
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-astropy?expand=0&rev=118
- Update to 6.0.1
## Bug Fixes
### astropy.coordinates
* Previously passing a SkyCoord instance to the
BaseCoordinateFrame separation() or separation_3d() methods
could produce wrong results, depending on what additional frame
attributes were defined on the SkyCoord, but now SkyCoord input
can be used safely. [#15659]
* Distance now accepts as parallax any angle-like value. This
includes types like Column which have a unit but are not
Quantity subclasses. [#15712]
* The new default for the class method SkyCoord.from_name() is to
look for coordinates first in SIMBAD, then in NED, and then in
VizieR, instead of having no specific order. [#16046]
### astropy.io.ascii
* Reading of CDS header files with multi-line descriptions where
the continued line started with a number was broken. This is
now fixed. [#15617]
* Ensure that the names of mixin columns are properly propagated
as labels for the MRT format. [#15848]
* Fixed reading IPAC tables for long column type on some
platforms, e.g., Windows. [#15992]
### astropy.io.fits
* Fix TDISP parsing for floating numbers. [#16007]
* Fix a crash when calling FITS writeto methods with stdout as
the output stream. [#16008]
* Fix TDISP parsing for floating numbers in formats ES / EN.
[#16015]
### astropy.stats
* Fix a spurious warning when calling sigma_clipped_stats on a
OBS-URL: https://build.opensuse.org/request/show/1163558
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-astropy?expand=0&rev=51
## Bug Fixes
### astropy.coordinates
* Previously passing a SkyCoord instance to the
BaseCoordinateFrame separation() or separation_3d() methods
could produce wrong results, depending on what additional frame
attributes were defined on the SkyCoord, but now SkyCoord input
can be used safely. [#15659]
* Distance now accepts as parallax any angle-like value. This
includes types like Column which have a unit but are not
Quantity subclasses. [#15712]
* The new default for the class method SkyCoord.from_name() is to
look for coordinates first in SIMBAD, then in NED, and then in
VizieR, instead of having no specific order. [#16046]
### astropy.io.ascii
* Reading of CDS header files with multi-line descriptions where
the continued line started with a number was broken. This is
now fixed. [#15617]
* Ensure that the names of mixin columns are properly propagated
as labels for the MRT format. [#15848]
* Fixed reading IPAC tables for long column type on some
platforms, e.g., Windows. [#15992]
### astropy.io.fits
* Fix TDISP parsing for floating numbers. [#16007]
* Fix a crash when calling FITS writeto methods with stdout as
the output stream. [#16008]
* Fix TDISP parsing for floating numbers in formats ES / EN.
[#16015]
### astropy.stats
* Fix a spurious warning when calling sigma_clipped_stats on a
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-astropy?expand=0&rev=116
- Update to 6.0.0
## New Features
### astropy.config
* The new ConfigNamespace.help() method provides a convenient way
to get information about configuration items. [#13499]
### astropy.coordinates
* Support has been added to create geodetic representations not
just for existing ellipsoids from ERFA, but also with
explicitly provided values, by defining a subclass of
BaseGeodeticRepresentation with the equatorial radius and
flattening assigned to _equatorial_radius and _flattening
attributes. [#14763]
* Add BaseBodycentricRepresentation, a new spheroidal
representation for bodycentric latitudes and longitudes.
[#14851]
* Support Numpy broadcasting over frame data and attributes.
[#15121]
### astropy.cosmology
* Registered a latex writer for exporting a Cosmology object to a
LaTex table. [#14701]
* Added argument rename to Cosmology’s I/O, allowing for input
and output symbols to be renamed. [#14780]
* All non-abstract Cosmology subclasses are now automatically
registered to work with Astropy’s YAML serialization. [#14979]
* Cosmology I/O now auto-identifies the ‘.tex’ suffix with the
‘ascii.latex’ format. [#15088]
* The Cosmology class now has a new property to access the
parameters of the cosmology: .parameters. This property return
a read-only dictionary of all the non-derived parameter values
on the cosmology object. When accessed from the class (not an
instance) the dictionary contains Parameter instances, not the
values. [#15168]
* The field default has been added to Parameter. This can be used
to introspect the default value of a parameter on a cosmology
class e.g. LambdaCDM.H0.default. [#15400]
### astropy.io.fits
* Add new option decompress_in_memory to fits.open, to decompress
the whole file in memory at once, instead of decompressing the
file progressively as data is needed. Default behavior is
better for memory usage but sometimes slow, especially for
files with many small HDUs. [#15501]
### astropy.io.votable
* Add support for Parquet serialization of VOTables. Writing of
this serialization is available with using the new
'votable.parquet' format. [#15281]
* Added MIVOT feature through the MivotBlock class that allows
model annotations reading and writing in VOTable. [#15390]
### astropy.modeling
* Added a GeneralSersic2D model that can have “boxy” or “disky”
isophotes. [#15545]
### astropy.nddata
* A more flexible and/or compact string representation is now
available for NDData objects which visually indicates masked
entries, and provides for better for dask array support.
[#14438]
### astropy.table
* The new Row.get() method, analogous to dict.get(), returns the
value of the specified column from the row if the column
present, otherwise it returns a fallback value, which by
default is None. [#14878]
### astropy.time
* Masked Time instances now use astropy’s own Masked class
internally. This means that Masked input is now properly
recognized, and that masks get propagated also to Quantity
output (such as from a TimeDelta converted to a unit of time),
creating MaskedQuantity instances. [#15231]
* Added a TimeDelta format quantity_str that represents the time
delta as a string with one or more Quantity components. This
format provides a human-readable multi-scale string
representation of a time delta. The default output sub-format
is not considered stable in this release, please see
astropy/astropy#15485 for more information. [#15264]
### astropy.uncertainty
* Uncertainty Distribution now support structured data types, and
as a result it now works also with EarthLocation. [#15304]
* Uncertainty Distribution can now be used inside
representations, which also allows basic support in SkyCoord.
While most calculations work, there are remaining issues. For
instance, the repr does not show that the coordinates are
distributions. [#15395]
### astropy.units
* Add support for gc2gde and gd2gce erfa functions to allow
geodetic representations using equatorial radius and
flattening. [#14729]
### astropy.utils
* The astropy.utils.metadata.MetaData default dictionary can now
be set with the default_factory keyword argument. [#15265]
* astropy.utils.decorators.deprecated now adds the __deprecated__
attribute to the objects it wraps, following the practice in
https://peps.python.org/pep-0702/. [#15310]
### astropy.visualization
* Add WCSAxes.text_coord method to print text using SkyCoord
objects parallel to plotting data points with
WCSAxes.plot_coord. [#14661]
### astropy.wcs
* Support WCS descriptions of basic planetary coordinate frames.
[#14820]
* Updated bundled WCSLIB version to 8.1. This update adds support
planetary keywords A_RADIUS, B_RADIUS, C_RADIUS, BLON_OBS,
BLAT_OBS, and BDIS_OBS in auxprm and adds wcsprm::time to the
wcsprm struct to record the TIME axis. This update also
includes several bug fixes. For a full list of changes - see
http://www.atnf.csiro.au/people/mcalabre/WCS/CHANGES [#15035]
## API Changes
### astropy.config
* Removed deprecated ConfigurationMissingWarning class and
update_default_config function; There are no replacements as
they should no be used anymore. [#15466]
### astropy.convolution
* Invalid kernel arithmetic operations now raise a
KernelArithmeticError instead of a bare Exception. [#14728]
* Added base KernelError error class and removed
DiscretizationError error class (a ValueError will be raised
instead). [#14732]
* discretize_model will now raise a ValueError if
mode='oversample' and factor does not have an integer value.
[#14794]
### astropy.coordinates
* Removed deprecated angle parsing and formatting utilities from
angle_utilities. Use the functions from angle_formats instead.
[#14675]
* The deprecated functionality of initializing Angle or Longitude
from a tuple is no longer supported. [#15205]
* Angle-related classes and functions have been moved within
astropy.coordinates. There is no change to public API as
everything moved should still be imported from
astropy.coordinates, not a sub-module. If you are using private
API, try importing from astropy.coordinates instead. If you
need something that has been moved and is not available in
astropy.coordinates, please open an issue on the Astropy issue
tracker. [#15220]
* It is no longer possible to pass frame classes to the
transform_to() method of a low-level coordinate-frame class. It
is still possible to pass frame instances. The transform_to()
method of the high-level SkyCoord class is unaffected. [#15500]
### astropy.cosmology
* Removed support of importing private constants and functions
from astropy.cosmology.flrw. [#14672]
* Removed deprecated Cosmology Parameter argument fmt. [#14673]
* Removed deprecated vectorize_if_needed and inf_like from
cosmology.utils. [#14677]
* Removed deprecated import paths from astropy.cosmology.core.
[#14782]
* Cosmology Parameter is now a dataclass, and can work with all
of Python’s dataclasses machinery, like field introspection and
type conversion. [#14874]
* A new property – scale_factor0 – has been added to Cosmology
objects. This is the scale factor at redshift 0, and is defined
to be 1.0. [#14931]
* Added registration label ascii.latex to Cosmology IO. [#14938]
* The private module astropy.cosmology.utils has been deprecated.
[#14980]
* Removed deprecated get_cosmology_from_string class method in
default_cosmology; use get instead. [#15467]
### astropy.io.ascii
* Several arguments in functions within astropy.io.ascii have
been deprecated and are either renamed or scheduled to be
removed.
* read(): - Reader will be removed. Instead supply the equivalent
format argument. - Inputter has been renamed to inputter_cls. -
Outputter has been renamed to outputter_cls.
* get_reader(): - Reader has been renamed to reader_cls. -
Inputter has been renamed to inputter_cls. - Outputter has been
renamed to outputter_cls.
* write(): - Writer will be removed. Instead supply the
equivalent format argument.
* get_writer(): - Writer has been renamed to writer_cls. [#14914]
* Removed deprecated astropy.io.ascii.tests.common.raises test
helper; use pytest.raises instead. [#15470]
### astropy.io.fits
* Deprecate _ExtensionHDU and _NonstandardExtHDU (use
ExtensionHDU or NonstandardExtHDU instead). [#15396]
* Remove special handling of TCTYP TCUNI TCRPX TCRVL TCDLT TRPOS
(#7157). [#15396]
* Rename and deprecate TableHDU.update to TableHDU.update_header,
for consistency with ImageHDU. [#15396]
### astropy.io.misc
* Removed deprecated astropy.io.misc.asdf subpackage. Use
asdf-astropy package instead. [#14668]
* fnunpickle and fnpickle are deprecated because they are not
used anywhere within astropy. If you must, use the module from
Python standard library but be advised that pickle is insecure
so you should only unpickle data that you trust. [#15418]
### astropy.io.votable
* Removed deprecated pedantic option from the
astropy.io.votable.table.parse() function and the corresponding
configuration setting. Use the verify option instead. [#14669]
* Class astropy.io.votable.tree.Table has been renamed to
TableElement to avoid sharing the name with
astropy.table.Table. [#15372]
* Fully removed support for version = ‘1.0’ on
VOTableFile__init__() and changed its tests to check correctly.
It was raising a DeprecationWarning and now is raising a
ValueError. [#15490]
### astropy.modeling
* Removed the AliasDict class from modeling.utils. [#12943]
* Creating a model instance with parameters that have
incompatible shapes will now raise a ValueError rather than an
IncompatibleShapeError. [#15209]
* Removal of deprecated code _model_to_fit_params and
_fitter_to_model_params from fitting.py. [#15461]
### astropy.stats
* The BoxLeastSquares, BoxLeastSquaresResults and LombScargle
classes are not available from astropy.stats anymore, they are
now available only from astropy.timeseries. [#15530]
### astropy.tests
* Removed deprecated deprecation, warning, and exception handling
functionality provided by astropy.tests.helper. [#14670]
* astropy.tests.command.FixRemoteDataOption and
astropy.tests.command.AstropyTest are deprecated. They are no
longer necessary after sunsetting astropy-helpers. [#15204]
### astropy.time
* Time has switched to use Masked arrays internally, instead of
indicating masked values using NaN in the internal jd2
attribute. As a result, any output from instances, such as one
gets with, say, the .isot format, will also use Masked by
default.
* For backwards compatibility, a new configuration item,
astropy.time.conf.masked_array_type is introduced which is set
to “astropy” by default (which indicates one wants to use
Masked), but can also be set to “numpy”, in which case
numpy.ma.MaskedArray will be used where possible (essentially,
for all but Quantity). [#15231]
* Changed the TimeDelta init signature to be consistent with that
of Time. Previously the argument order was val, val2, format,
scale, copy. Now the order is val, val2, format, scale, *,
precision, in_subfmt, out_subfmt, copy, where the arguments
after the * must be specified by keyword. [#15264]
### astropy.timeseries
* Removed deprecated midpoint_epoch in fold function; use
epoch_time instead. [#15462]
### astropy.uncertainty
* The .dtype attribute exposed by Distribution is now that of the
samples, rather than one that has a “samples” entry. This makes
quantities with structured data types and units easier to
support, and generally makes the Distribution appear more
similar to regular arrays. It should have little effect on
code. For instance, distribution["samples"] still will return
the actual distribution.
* As a consequence of this refactoring, most arrays that are not
C-contiguous can now be viewed and will thus not be copied on
input any more. The only exceptions are arrays for which the
strides are negative.
* Note that the true data type is considered an implementation
detail. But for reference, it now is a structured data type
with a single field, “samples”, which itself is an array of
“sample” fields, which contain the actual data. [#15304]
### astropy.units
* Like np.ndarray, under numpy 2.0 Quantity and all its
subclasses (Angle, Masked, etc.) will no longer support the
.ptp() method. Use np.ptp(...) instead.
* Similarly, support for the much less frequently used
.newbyteorder() and .itemset() methods has been removed.
[#15378]
* The following deprecated functionality has been removed:
- littleh unit and with_H0 equivalency. They are still
available from cosmology.units.
- brightness_temperature equivalency no longer automatically
swaps the order of its arguments if it does not match the
expectation.
- PhysicalType no longer supports str methods and attributes.
[#15514]
### astropy.utils
* Removed deprecated OrderedDescriptor,
OrderedDescriptorContainer, and set_locale in
astropy.utils.misc. [#14679]
* is_path_hidden() and walk_skip_hidden() are deprecated.
[#14759]
* The structure of utils.metadata has been refactored, but all
the available functions and classes are still present and
should be imported as before. [#15166]
* The astropy.utils.metadata.MetaData class, which is used
throughout astropy to carry metadata on tables, columns, etc.,
can now also be used on dataclasses.
* When accessing the meta attribute on a class
astropy.utils.metadata.MetaData now returns None instead of
itself. [#15237]
* The astropy.utils.metadata.MetaData class, which is used
throughout astropy to carry metadata on tables, columns, etc.,
can now also be used on frozen dataclasses. [#15404]
* Removed deprecated version_path in minversion function; it is
no longer used. [#15468]
### astropy.visualization
* The bboxes, ticklabels_bbox, and tick_out_size arguments to
astropy.visualization.wcaxes.ticklabels.TickLabels.draw() now
have no effect and are deprecated. This is to allow rasterized
ticks to be drawn correctly on WCSAxes. [#14760]
* It is now not possible to pass any keyword arguments to
astropy.visualization.wcsaxes.WCSAxes.draw(). Previously
passing any keyword arguments would have errored anyway, as
matplotlib.axes.Axes.draw() does not accept keyword arguments.
[#14772]
* Deprecated the exp attribute in the LogStretch,
InvertedLogStretch, PowerDistStretch, and
InvertedPowerDistStretch stretch classes, and the power
attribute in the PowerStretch. Instead, use the a attribute,
which matches the input keyword. [#15538]
* Removed the maximum value of the a parameter in the
AsinhStretch and SinhStretch stretch classes. [#15539]
### astropy.wcs
* Removed deprecated accuracy from all_world2pix method in WCS;
use tolerance instead. [#15464]
* NoConvergence no longer accepts arbitrary keyword arguments.
[#15504]
## Bug Fixes
### astropy.coordinates
* Fixed minor bug when getting solar system positions of objects
from Type 3 SPICE kernel files. [#15612]
### astropy.cosmology
* The exponent in w0wzCDM.de_density_scale has been corrected to
3, from -3. This correction has also been made to the scalar
inv_efunc cpython functions. [#14991]
* pandas.Series are now uniformly converted to their underlying
data type when given as an argument to a Cosmology method.
[#15600]
### astropy.io.fits
* Reading a table from FITS now respects the TNULL property of a
column, passing it into the column’s fill_value. [#14723]
* Fix crash when a PrimaryHDU has a GROUPS keyword with a
non-boolean value (i.e. not a random-groups HDU). [#14998]
* Fixed a bug that caused Cutout2D to not work correctly with
CompImageHDU.section [#14999]
* Fixed a bug that caused compressed images with TFORM missing
the optional ‘1’ prefix to not be readable. [#15001]
* Ensure that tables written to FITS with both masked and
unmasked columns roundtrip properly (previously, all integer
columns would become masked if any column was masked). [#15473]
* Fix segfault with error report in tile decompression. [#15489]
### astropy.io.votable
* Output of repr for VOTable instance now clearly shows it is a
VOTable and not generic astropy Table. [#14702]
### astropy.modeling
* All models can be pickled now. [#14902]
### astropy.nddata
* Restore bitmask propagation behavior in NDData.mask, plus a fix
for arithmetic between masked and unmasked NDData objects.
[#14995]
### astropy.table
* Table.as_array now respects the fill_value property of masked
columns. [#14723]
* Fix a bug where table indexes were not using a stable sort
order. This was causing the order of rows within groups to not
match the original table order when an indexed table was
grouped. [#14907]
* Fixed issue #14964 that when grouping a Table on a mixin column
such as Quantity or Time, the grouped table keys did not
reflect the original column values. For Quantity this meant
that the key values were pure float values without the unit,
while for Time the key values were the pair of jd1 and jd2
float values. [#14966]
### astropy.time
* Ensure that the Time caches of formats and scales do not get
out of sync with the actual data, even if another instance,
holding a view of the data is written to. E.g., if one does t01
= t[:2], and sets t[0] after, it is now guaranteed that
t01.value will correctly reflect that change in value. [#15453]
### astropy.units
* In VOunits, “pix”, “au”, “a”, and “ct” are removed from the
list of deprecated units. [#14885]
### astropy.utils
* Ufuncs with more than 2 operands (such as erfa.dtf2d) now work
also if all inputs are scalars and more than two inputs have
masks. [#15450]
* Ensured that str(masked_array) looks like str(unmasked_array)
also for array scalars. Thus, like regular array scalars, the
precision is ignored for float, and strings do not include
extra quoting. [#15451]
### astropy.visualization
* The location of ticklabels on a WCSAxes is now correctly
calculated when the figure is rasterized. [#14760]
* Fixed a bug where a ValueError would be raised in the
AsinhStretch and SinhStretch classes for valid a parameter
values. [#15539]
### astropy.wcs
* wcs.validate(filename) now properly closes the file handler.
[#15054]
* Fix a regression in custom WCS mapping due to the recent
introduction of Solar System frames. [#15630]
## Other Changes and Additions
* The minimum supported version of NumPy is now 1.22. [#15006]
* Moved International Earth Rotation and Reference Systems (IERS)
and Leap Second files out into standalone astropy-iers-data
package, maintaining full backward-compatibility in the
astropy.utils.iers API. Deprecation warnings may be issued when
certain files are accessed directly. [#14819]
* Switch from using setup.cfg for project configuration to using
pyproject.toml. [#15247]
* Update bundled expat to 2.5.0. [#15585]
- Drop astropy-pr15479-pvstar.patch
OBS-URL: https://build.opensuse.org/request/show/1132348
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-astropy?expand=0&rev=48
- Update to 6.0.0
## New Features
### astropy.config
* The new ConfigNamespace.help() method provides a convenient way
to get information about configuration items. [#13499]
### astropy.coordinates
* Support has been added to create geodetic representations not
just for existing ellipsoids from ERFA, but also with
explicitly provided values, by defining a subclass of
BaseGeodeticRepresentation with the equatorial radius and
flattening assigned to _equatorial_radius and _flattening
attributes. [#14763]
* Add BaseBodycentricRepresentation, a new spheroidal
representation for bodycentric latitudes and longitudes.
[#14851]
* Support Numpy broadcasting over frame data and attributes.
[#15121]
### astropy.cosmology
* Registered a latex writer for exporting a Cosmology object to a
LaTex table. [#14701]
* Added argument rename to Cosmology’s I/O, allowing for input
and output symbols to be renamed. [#14780]
* All non-abstract Cosmology subclasses are now automatically
registered to work with Astropy’s YAML serialization. [#14979]
* Cosmology I/O now auto-identifies the ‘.tex’ suffix with the
‘ascii.latex’ format. [#15088]
* The Cosmology class now has a new property to access the
parameters of the cosmology: .parameters. This property return
a read-only dictionary of all the non-derived parameter values
on the cosmology object. When accessed from the class (not an
OBS-URL: https://build.opensuse.org/request/show/1132272
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-astropy?expand=0&rev=108
- Update to 5.3.4
## Bug Fixes
### astropy.io.misc
* Updated ``astropy.io.misc.yaml`` so ``dump()` with a numpy
object array or ``load()`` with YAML representing a Numpy
object array both raise ``TypeError``. This prevents problems
like a segmentation fault. [#15373]
### astropy.io.votable
* Fixed a bug in ``convert_to_writable_filelike`` where
``GzipFile`` was not closed properly. [#15359]
### astropy.units
* In VOUnit, the spaces around the slash were removed in the
formatting of fractions, and fractional powers now also use the
"**" operator. [#15282]
* We now ensure that the unit ``u.cgs.cm`` is just an alias of
``u.si.cm``, instead of a redefinition. This ensures that
``u.Unit("cm") / u.cm`` will reliably cancel to dimensionless
(instead of some "cm / cm"). [#15368]
### astropy.utils
* For ``Masked``, ``np.ptp`` and the ``.ptp()`` method now
properly account for the mask, ensuring the result is identical
to subtracting the maximum and minimum (with the same
arguments). [#15380]
## Other Changes and Additions
* Compatibility with Python 3.12. [#14784]
* Replaced the URL of ``IETF_LEAP_SECOND_URL`` because the
original is now defunct and IETF now defers to IANA for such
look-up. [#15421]
OBS-URL: https://build.opensuse.org/request/show/1115987
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-astropy?expand=0&rev=46
## Bug Fixes
### astropy.io.misc
* Updated ``astropy.io.misc.yaml`` so ``dump()` with a numpy
object array or ``load()`` with YAML representing a Numpy
object array both raise ``TypeError``. This prevents problems
like a segmentation fault. [#15373]
### astropy.io.votable
* Fixed a bug in ``convert_to_writable_filelike`` where
``GzipFile`` was not closed properly. [#15359]
### astropy.units
* In VOUnit, the spaces around the slash were removed in the
formatting of fractions, and fractional powers now also use the
"**" operator. [#15282]
* We now ensure that the unit ``u.cgs.cm`` is just an alias of
``u.si.cm``, instead of a redefinition. This ensures that
``u.Unit("cm") / u.cm`` will reliably cancel to dimensionless
(instead of some "cm / cm"). [#15368]
### astropy.utils
* For ``Masked``, ``np.ptp`` and the ``.ptp()`` method now
properly account for the mask, ensuring the result is identical
to subtracting the maximum and minimum (with the same
arguments). [#15380]
## Other Changes and Additions
* Compatibility with Python 3.12. [#14784]
* Replaced the URL of ``IETF_LEAP_SECOND_URL`` because the
original is now defunct and IETF now defers to IANA for such
look-up. [#15421]
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-astropy?expand=0&rev=104
- Update to 5.3.3
## Bug Fixes
### astropy.coordinates
* TransformGraph.to_dot_graph() now throws an exception for
invalid savelayout.
### astropy.cosmology
* The exponent of w0wzCDM functions in inv_efunc has been
corrected to 3, from -3. [#15224]
### astropy.modeling
* Astropy modeling can filter non-finite data values using the
filter_non_finite keyword argument in a fitter call. Now when
filter_non_finite is True, non-finite weights will also be
filtered to prevent crashes in LevMarLSQFitter. [#15215]
### astropy.units
* Fixed astropy.units.Quantity’s implementation of
numpy.nanmedian(), where for Numpy >= 1.25 an exception was
raised for some array shapes and axis combinations. [#15228]
## Other Changes and Additions
* v5.3.x will not support NumPy 2.0 or later. [#15234]
- Restrain to Cython < 3 -- gh#astropy/astropy#15315
OBS-URL: https://build.opensuse.org/request/show/1111062
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-astropy?expand=0&rev=45
## Bug Fixes
### astropy.coordinates
* TransformGraph.to_dot_graph() now throws an exception for
invalid savelayout.
### astropy.cosmology
* The exponent of w0wzCDM functions in inv_efunc has been
corrected to 3, from -3. [#15224]
### astropy.modeling
* Astropy modeling can filter non-finite data values using the
filter_non_finite keyword argument in a fitter call. Now when
filter_non_finite is True, non-finite weights will also be
filtered to prevent crashes in LevMarLSQFitter. [#15215]
### astropy.units
* Fixed astropy.units.Quantity’s implementation of
numpy.nanmedian(), where for Numpy >= 1.25 an exception was
raised for some array shapes and axis combinations. [#15228]
## Other Changes and Additions
* v5.3.x will not support NumPy 2.0 or later. [#15234]
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-astropy?expand=0&rev=100
* The exponent in ``wowzCDM.de_density_scale`` has been
corrected to 3, from -3.
* Fix crash when a PrimaryHDU has a GROUPS keyword with a non-
boolean value (i.e. not a random-groups HDU).
* Fixed a bug that caused ``Cutout2D`` to not work correctly
with ``CompImageHDU.section``
* Fixed a bug that caused compressed images with TFORM missing
the optional '1' prefix to not be readable. [#15001]
* Restore bitmask propagation behavior in ``NDData.mask``, plus
a fix for arithmetic between masked and unmasked ``NDData``
objects.
* Fix a bug where table indexes were not using a stable sort
order. This was causing the order of rows within groups to
not match the original table order when an indexed table
was grouped. [#14907]
* In VOunits, "pix", "au", "a", and "ct" are removed from the
list of deprecated units. [#14885]
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-astropy?expand=0&rev=96
- Update to 5.3
* New flat astropy.cosmology classes
* New union operators for Table
* Efficient data access for compressed FITS files
* Added support for NOCOMPRESS for compressed FITS files
* New fraction option for representing units as strings
* Change in order in unit string representations
* Support for collapse operations on arbitrary axes in nddata
* Refresh cached observatory site registry for EarthLocation
methods
* Support for collapse operations on arbitrary axes in nddata
* New LombScargleMultiband class for multiband datasets
- Remove unbundling of cfitsio -- gh#astropy/astropy#14311
OBS-URL: https://build.opensuse.org/request/show/1096299
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-astropy?expand=0&rev=42
* New flat astropy.cosmology classes
* New union operators for Table
* Efficient data access for compressed FITS files
* Added support for NOCOMPRESS for compressed FITS files
* New fraction option for representing units as strings
* Change in order in unit string representations
* Support for collapse operations on arbitrary axes in nddata
* Refresh cached observatory site registry for EarthLocation
methods
* Support for collapse operations on arbitrary axes in nddata
* New LombScargleMultiband class for multiband datasets
- Remove unbundling of cfitsio -- gh#astropy/astropy#14311
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-astropy?expand=0&rev=94
- Update to 5.2.2
## Bug Fixes
### astropy.io.ascii
* CDS and MRT tables with units that contain with multiple
divisions, such as km/s/Mpc now parse correctly as being equal
to km/(s.Mpc). [#14369]
### astropy.io.fits
* Fix FITSDiff when table contains a VLA column with the Q type.
[#14539]
### astropy.table
* Fix a bug when creating a QTable when a Quantity input column
is present and the units argument modifies the unit of that
column. This now works as expected where previously this caused
an exception. [#14357]
### astropy.units
* CDS units with multiple divisions, such as km/s/Mpc now parse
correctly as being equal to km/(s.Mpc). [#14369]
### astropy.wcs
* Fixed a bug that caused subclasses of BaseHighLevelWCS and
HighLevelWCSMixin to not work correctly under certain
conditions if they did not have world_n_dim and pixel_n_dim
defined on them. [#14495]
OBS-URL: https://build.opensuse.org/request/show/1082978
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:numeric/python-astropy?expand=0&rev=92
- Update to 5.2.1
## Bug Fixes
### astropy.coordinates
* Fix to ITRS frame earth_location attribute to give the correct
result for a topocentric frame. [#14180]
### astropy.cosmology
* Bounds are no longer passed to the scipy minimizer for methods
Brent and Golden. The scipy minimizer never used the bounds but
silently accepted them. In scipy v1.11.0.dev0+ an error is
raised, so we now pass None as the bounds to the minimizer.
Users should not be affected by this change. [#14232]
### astropy.io.fits
* Tables with multidimensional variable length array can now be
properly read and written. [#13417]
### astropy.units
* Modified the behavior of numpy.histogram(),
numpy.histogram_bin_edges(), numpy.histogram2d(), and
numpy.histogramdd() so that the range argument must a
compatible instance of astropy.units.Quantity if the other
arguments are instances of astropy.units.Quantity. [#14213]
### astropy.visualization
* Improved the performance of drawing WCSAxes grids by skipping
some unnecessary computations. [#14164]
* Fixed WCSAxes sometimes triggering a NumPy RuntimeWarning when
determining the coordinate range of the axes. [#14211]
## Other Changes and Additions
* Fix compatibility with Numpy 1.24. [#14193]
- Drop astropy-pr14194-numpy1.24.patch (forwarded request 1058279 from bnavigator)
OBS-URL: https://build.opensuse.org/request/show/1058280
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-astropy?expand=0&rev=39