1
0

Accepting request 1171972 from home:bnavigator:branches:devel:languages:python:numeric

- 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
This commit is contained in:
Benjamin Greiner 2024-05-05 10:53:38 +00:00 committed by Git OBS Bridge
parent c7226b37f0
commit 3376c20c6c
4 changed files with 360 additions and 12 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:89a975de356d0608e74f1f493442fb3acbbb7a85b739e074460bb0340014b39c
size 7074537

3
astropy-6.1.0.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6c3b915f10b1576190730ddce45f6245f9927dda3de6e3f692db45779708950f
size 7034312

View File

@ -1,3 +1,351 @@
-------------------------------------------------------------------
Sun May 5 09:45:35 UTC 2024 - Ben Greiner <code@bnavigator.de>
- 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 quantitys .info.
[#15848]
* Fix a bug where columns with dtype=object wouldnt 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 werent being re-exposed
correctly or at all, depending on numpys 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 wouldnt respect matplotlib.rcs
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 Whats New page for
Astropy 6.1 . [#16181]
-------------------------------------------------------------------
Fri Mar 29 16:51:14 UTC 2024 - Ben Greiner <code@bnavigator.de>

View File

@ -49,7 +49,7 @@
%{?sle15_python_module_pythons}
Name: python-astropy%{psuffix}
Version: 6.0.1
Version: 6.1.0
Release: 0
Summary: Community-developed python astronomy tools
License: BSD-3-Clause
@ -59,11 +59,11 @@ Source: https://files.pythonhosted.org/packages/source/a/astropy/astropy
# 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
# https://docs.astropy.org/en/v6.0/install.html#requirements
# https://docs.astropy.org/en/v6.1/install.html#requirements
BuildRequires: %{python_module Cython >= 3 with %python-Cython < 3.1}
BuildRequires: %{python_module devel >= 3.9}
BuildRequires: %{python_module extension-helpers >= 1.0}
BuildRequires: %{python_module numpy-devel >= 1.25 with %python-numpy-devel < 2}
BuildRequires: %{python_module numpy-devel}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module setuptools_scm >= 6.2}
BuildRequires: %{python_module setuptools}
@ -73,16 +73,16 @@ BuildRequires: hdf5-devel
BuildRequires: pkgconfig
BuildRequires: python-rpm-macros
Requires: python-PyYAML >= 3.13
Requires: python-astropy-iers-data >= 0.2024.2.26.0.28.55
Requires: python-astropy-iers-data >= 0.2024.4.29.0.28.48
Requires: python-numpy >= 1.23
Requires: python-packaging >= 19.0
Requires: python-pyerfa >= 2.0.1.1
Requires: (python-numpy >= 1.22 with python-numpy < 2)
Requires(post): update-alternatives
Requires(postun): update-alternatives
# %%{_bindir}/showtable namespace clash
Conflicts: perl-Data-ShowTable
# [recommended]
Recommends: python-scipy >= 1.5
Recommends: python-scipy >= 1.8
Recommends: python-matplotlib >= 3.3
Conflicts: python-matplotlib = 3.4.0
Conflicts: python-matplotlib = 3.5.2
@ -126,9 +126,9 @@ BuildRequires: %{python_module pandas}
BuildRequires: %{python_module pyarrow >= 5}
%endif
BuildRequires: %{python_module pytz}
BuildRequires: %{python_module scipy >= 1.5}
BuildRequires: %{python_module scipy >= 1.8}
BuildRequires: %{python_module sortedcontainers}
BuildRequires: %{python_module typing_extensions >= 3.10.0.1}
BuildRequires: %{python_module typing_extensions >= 4.0.0}
BuildRequires: libxml2-tools
# /SECTION
# SECTION [test]
@ -180,7 +180,7 @@ hypothesis.settings.register_profile(
suppress_health_check=[hypothesis.HealthCheck.too_slow]
)
" >> astropy/conftest.py
sed -i 's/--color=yes//' pyproject.toml
sed -i '/"--color=yes",/d' pyproject.toml
find astropy -name .gitignore -delete
find astropy -name .empty -delete
find astropy -name '*.c' -exec chmod -x {} ';'