Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(deps): update minor updates #20

Merged
merged 3 commits into from
Nov 19, 2024
Merged

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Jul 24, 2024

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
astropy 6.0.1 -> 6.1.6 age adoption passing confidence
healpy 1.17.1 -> 1.18.0 age adoption passing confidence
mypy (source, changelog) 1.10.0 -> 1.13.0 age adoption passing confidence
pandas (source) 2.2.2 -> 2.2.3 age adoption passing confidence
pymongo 4.7.3 -> 4.10.1 age adoption passing confidence
pytest (changelog) 8.2.2 -> 8.3.3 age adoption passing confidence
ruff (source, changelog) 0.4.10 -> 0.7.4 age adoption passing confidence
tqdm (changelog) 4.66.4 -> 4.67.0 age adoption passing confidence

Release Notes

astropy/astropy (astropy)

v6.1.6

Compare Source

==========================

Bug Fixes

astropy.coordinates
^^^^^^^^^^^^^^^^^^^

  • Fixed instantiating Angle from a pandas Series object. [#​17358]

astropy.units
^^^^^^^^^^^^^

  • Fixed calling np.nanvar and np.nanstd with Quantity out argument. [#​17354]

v6.1.5

Compare Source

==========================

Bug Fixes

astropy.coordinates
^^^^^^^^^^^^^^^^^^^

  • Ensure that coordinates can be transformed to other coordinate frames
    also if they have size zero (i.e., hold empty data arrays). [#​17013]

  • Longitude and Latitude can no longer be initialized with strings
    ending in "N" or "S", and "E" or "W", respectively, since those suggest
    the other type. [#​17132]

  • np.nanvar(angle) now produces a Quantity with the correct
    unit, rather than raising an exception. [#​17239]

  • Fix a crash when instantiating Angle (or Latitude, or Longitude)
    from a non-numpy array (for instance pyarrow arrays). [#​17263]

astropy.io.fits
^^^^^^^^^^^^^^^

  • Fix access to VLA columns after slicing .data. [#​16996]

astropy.io.votable
^^^^^^^^^^^^^^^^^^

  • Updated xml writer for VOTable Resource elements to include groups. [#​17344]

astropy.nddata
^^^^^^^^^^^^^^

  • Add support for positional only and keyword only arguments when using the support_nddata decorator. [#​17281]

astropy.stats
^^^^^^^^^^^^^

  • Fixed a bug where float32 inputs to sigma_clip and SigmaClip were
    changed to float. [#​17086]

astropy.table
^^^^^^^^^^^^^

  • Fix a crash when calling Column.pprint on a scalar column. [#​15749]

  • Ensure that setting an existing column to a scalar always properly fills it
    (rather than breaking the table if there was only one column in it). [#​17105]

astropy.units
^^^^^^^^^^^^^

  • The unit parsers are now better at recognizing unusual composite
    units:

    • units involving special unicode symbols, like "L☉/pc²";
    • units that include CDS units ending in a 0, like "eps0/s";
    • units including the degree symbol, "°". For example, "°C/s" is no
      longer incorrectly interpreted as "°C/s^2". [#​17011]
  • Converting the ohm to a string with the OGIP unit formatter (e.g.
    f"{u.ohm:ogip}") previously produced the string 'V / A', but now
    produces 'ohm' as expected. [#​17200]

  • The OGIP unit formatter now handles the unit day and the corresponding
    string "d" in full compliance with the standard. [#​17216]

  • The "ogip" unit format now represents the unit angstrom as "angstrom"
    instead of "0.1 nm". [#​17241]

astropy.utils
^^^^^^^^^^^^^

  • Ensure that queries of .ut1_utc() and .pm_xy() return the correct
    results also when passing in an empty array of times. [#​17013]

  • Fixed a bug where astropy's logger wouldn't perform lazy string interpolation. [#​17196]

astropy.visualization
^^^^^^^^^^^^^^^^^^^^^

  • Fixed a bug that caused CoordinateHelper.get_axislabel() to return an
    empty string instead of the default label if no label has been explicitly
    provided. [#​17175]

astropy.wcs
^^^^^^^^^^^

  • Fixed a bug that caused WCS.slice to ignore numpy_order and always
    interpret the slices as if numpy_order was True, in the specific case
    where the slices were such that dimensions in the WCS would be dropped. [#​17147]

v6.1.4

Compare Source

==========================

Bug Fixes

astropy.coordinates
^^^^^^^^^^^^^^^^^^^

  • Keep Latitude from printing long input arrays in their entirety when failing
    limits check in _validate_angles, indicating their range instead. [#​13997]

  • Avoid some components not being included in table output of coordinates if
    the representation type was "unitspherical".

    In the process, also ensured that one can pass in the radial_velocity
    keyword argument if one uses differential_type="radial". [#​16999]

astropy.io.votable
^^^^^^^^^^^^^^^^^^

  • Ensure proper handling of null values during BINARY2 serialization. Previously, masks were handled in two different ways for BINARY2 serialization, resulting in incorrect handling of null values and errors. [#​16091]

astropy.stats
^^^^^^^^^^^^^

  • Fixed a bug in biweight_location, biweight_scale, and
    biweight_midvariance where the returned array shape would be wrong if
    the input array had an axis length of 1 along any axis that was not
    included in the axis keyword. Also fixed a bug in these same functions
    where for constant data and axis set to a tuple containing all axes, the
    returned value would be NaN instead of the constant value. [#​16964]

astropy.table
^^^^^^^^^^^^^

  • Ensure that initializing a QTable with explicit units` also succeeds if
    one of the units is u.one. [#​17048]

astropy.units
^^^^^^^^^^^^^

  • An exception is now raised if it is attempted to create a unit with a
    scale of zero, avoiding bugs further downstream (including surprising
    ones, such as a comparison of np.ma.masked == u.one leading to
    a ZeroDivisionError). [#​17048]

astropy.wcs
^^^^^^^^^^^

  • Fix a bug that caused the results from local_partial_pixel_derivative to be incorrect when using normalize_by_world=True (the matrix was previously normalized along the wrong axis) [#​17003]

Other Changes and Additions

  • Minimal requirement for (optional dependency) matplotlib was bumped
    to 3.5.0, which is the oldest version with support for Python 3.10 [#​16993]

v6.1.3

Compare Source

==========================

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]

v6.1.2

Compare Source

==========================

Bug Fixes

astropy.io.ascii
^^^^^^^^^^^^^^^^

  • 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. [#​16735]

astropy.io.fits
^^^^^^^^^^^^^^^

  • Fix a spurious exception when reading integer compressed images with blanks. [#​16550]

  • 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. [#​16581]

astropy.modeling
^^^^^^^^^^^^^^^^

  • 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. [#​16664]

  • 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. [#​16678]

astropy.units
^^^^^^^^^^^^^

  • 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. [#​16743]

astropy.utils
^^^^^^^^^^^^^

  • Fixed an edge-case bug in overlap_slices where the function could
    return an empty slice for non-overlapping slices. [#​16544]

astropy.visualization
^^^^^^^^^^^^^^^^^^^^^

  • Fixed a WCSAxes bug when overlaying a frame with default units that are not degrees. [#​16662]

v6.1.1

Compare Source

==========================

Bug Fixes

astropy.io.fits
^^^^^^^^^^^^^^^

  • Let fitsdiff compare files with lower case HIERARCH keywords [#​16357]

  • Fix writing a HDUList to file when numpy 2 is installed and at least some of
    the data is represented as dask arrays. [#​16384]

  • Fix display of diff reports with numpy 2. [#​16426]

  • Ensure that also zero-length tables preserve whether integer data are
    signed or unsigned. [#​16505]

astropy.io.misc
^^^^^^^^^^^^^^^

  • Fix YAML table serialization compatibility with numpy 2. [#​16416]

astropy.io.votable
^^^^^^^^^^^^^^^^^^

  • Fix bugs in io.votable related to numpy 2's representation of scalars. [#​16442]

astropy.stats
^^^^^^^^^^^^^

  • Ensure that return types from sigma_clip cenfunc and stdfunc
    are np.float64 for scalar values. [#​16431]

astropy.table
^^^^^^^^^^^^^

  • Ensure structured MaskedColumn are serialized correctly, including
    the mask. [#​16380]

  • Fix problems converting Pandas Series to Table with numpy >=2.0. [#​16439]

astropy.time
^^^^^^^^^^^^

  • Ensure Time in ymdhms format can also be serialized to files as part of a
    table if it is masked. [#​16380]

astropy.utils
^^^^^^^^^^^^^

  • 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. [#​16380]

  • Fix bugs with how masked structured arrays were represented with numpy 2. [#​16443]

  • MaskedQuantity now works properly with np.block. [#​16499]

astropy.visualization
^^^^^^^^^^^^^^^^^^^^^

  • Fix a bug where WCSAxes could be missing negative signs on axis labels when using matplotlib's usetex mode. [#​16406]

astropy.wcs
^^^^^^^^^^^

  • Fix compilation with gcc 14, avoid implicit pointer conversions. [#​16450]

Other Changes and Additions

  • Updated bundled WCSLIB version to 8.3. This update changes the behavior of
    various *set functions in order to improve stability of WCSLIB in threaded
    applications. For a full list of changes - see astropy/cextern/wcslib/CHANGES. [#​16451]

v6.1.0

Compare Source

==========================

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 <https://wicg.github.io/private-network-access>_. [#​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 https://github.com/astropy/astropy/issues/160676067 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 <https://peps.python.org/pep-3147/#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]

  • astropy is now compiled against NumPy 2.0, enabling runtime compatibility
    with this new major release. Compatibility with NumPy 1.23 and newer
    versions of NumPy 1.x is preserved through this change. [#​16252]

python/mypy (mypy)

v1.13.0

Compare Source

v1.12.1

Compare Source

  • Fix crash when showing partially analyzed type in error message (Ivan Levkivskyi, PR 17961)
  • Fix iteration over union (when self type is involved) (Shantanu, PR 17976)
  • Fix type object with type var default in union context (Jukka Lehtosalo, PR 17991)
  • Revert change to os.path stubs affecting use of os.PathLike[Any] (Shantanu, PR 17995)

v1.12.0

Compare Source

v1.11.2

Compare Source

v1.11.1

Compare Source

v1.11.0

Compare Source

v1.10.1

Compare Source

  • Fix error reporting on cached run after uninstallation of third party library (Shantanu, PR 17420)
pandas-dev/pandas (pandas)

v2.2.3: Pandas 2.2.3

Compare Source

We are pleased to announce the release of pandas 2.2.3.
This release includes some new features, bug fixes, and performance improvements. We recommend that all users upgrade to this version.

See the full whatsnew for a list of all the changes.
Pandas 2.2.3 supports Python 3.9 and higher.

The release will be available on the defaults and conda-forge channels:

conda install pandas

Or via PyPI:

python3 -m pip install --upgrade pandas

Please report any issues with the release on the pandas issue tracker.

Thanks to all the contributors who made this release possible.

mongodb/mongo-python-driver (pymongo)

v4.10.1: PyMongo 4.10.1

Compare Source

Community notes: https://www.mongodb.com/community/forums/t/pymongo-4-10-1-released/299573

v4.10.0: PyMongo 4.10.0

Compare Source

Community notes: https://www.mongodb.com/community/forums/t/pymongo-4-10-0-released/299474

v4.9.2: PyMongo 4.9.2

Compare Source

  • Fixed a bug where pymongo.asynchronous.mongo_client.AsyncMongoClient could deadlock.
  • Fixed a bug where PyMongo could fail to import on Windows if asyncio is misconfigured.
  • Fixed a bug where pymongo.results.UpdateResult.did_upsert would raise a TypeError.

v4.9.1: PyMongo 4.9.1

Compare Source

Community notes: https://www.mongodb.com/community/forums/t/pymongo-4-9-released/297833

v4.9

Compare Source

v4.8.0: PyMongo 4.8.0

Compare Source

Changes in Version 4.8.0

PyMongo 4.8 brings a number of improvements including:

  • The handshake metadata for "os.name" on Windows has been simplified to "Windows" to improve import time.
  • The repr of bson.binary.Binary is now redacted when the subtype is SENSITIVE_SUBTYPE(8).
  • Secure Software Development Life Cycle automation for release process.
    GitHub Releases now include a Software Bill of Materials, and signature
    files corresponding to the distribution files released on PyPI.
  • Fixed a bug in change streams where both startAtOperationTime and resumeToken
    could be added to a retry attempt, which caused the retry to fail.
  • Fallback to stdlib ssl module when pyopenssl import fails with AttributeError.
  • Improved performance of MongoClient operations, especially when many operations are being run concurrently.

Unavoidable breaking changes

  • Since we are now using hatch as our build backend, we no longer have a usable setup.py file
    and require installation using pip. Attempts to invoke the setup.py file will raise an exception.
    Additionally, pip >= 21.3 is now required for editable installs.

Issues Resolved

See the PyMongo 4.8 release notes in JIRA for the list of resolved issues in this release.


Full Changelog: mongodb/mongo-python-driver@4.7.1...4.8.0

pytest-dev/pytest (pytest)

v8.3.3

Compare Source

pytest 8.3.3 (2024-09-09)

Bug fixes

  • #​12446: Avoid calling @property (and other instance descriptors) during fixture discovery -- by asottile{.interpreted-text role="user"}

  • #​12659: Fixed the issue of not displaying assertion failure differences when using the parameter --import-mode=importlib in pytest>=8.1.

  • #​12667: Fixed a regression where type change in [ExceptionInfo.errisinstance]{.title-ref} caused [mypy]{.title-ref} to fail.

  • #​12744: Fixed typing compatibility with Python 3.9 or less -- replaced [typing.Self]{.title-ref} with [typing_extensions.Self]{.title-ref} -- by Avasam{.interpreted-text role="user"}

  • #​12745: Fixed an issue with backslashes being incorrectly converted in nodeid paths on Windows, ensuring consistent path handling across environments.

  • #​6682: Fixed bug where the verbosity levels where not being respected when printing the "msg" part of failed assertion (as in assert condition, msg).

  • #​9422: Fix bug where disabling the terminal plugin via -p no:terminal would cause crashes related to missing the verbose option.

    -- by GTowers1{.interpreted-text role="user"}

Improved documentation

  • #​12663: Clarify that the [pytest_deselected]{.title-ref} hook should be called from [pytest_collection_modifyitems]{.title-ref} hook implementations when items are deselected.
  • #​12678: Remove erroneous quotes from [tmp_path_retention_policy]{.title-ref} example in docs.

Miscellaneous internal changes

  • #​12769: Fix typos discovered by codespell and add codespell to pre-commit hooks.

v8.3.2

Compare Source

pytest 8.3.2 (2024-07-24)

Bug fixes

  • #​12652: Resolve regression [conda]{.title-ref} environments where no longer being automatically detected.

    -- by RonnyPfannschmidt{.interpreted-text role="user"}

v8.3.1

Compare Source

pytest 8.3.1 (2024-07-20)

The 8.3.0 release failed to include the change notes and docs for the release. This patch release remedies this. There are no other changes.

v8.3.0

Compare Source

pytest 8.3.0 (2024-07-20)

New features

  • #​12231: Added [--xfail-tb]{.title-ref} flag, which turns on traceback output for XFAIL results.

    • If the [--xfail-tb]{.title-ref} flag is not given, tracebacks for XFAIL results are NOT shown.
    • The style of traceback for XFAIL is set with [--tb]{.title-ref}, and can be [auto|long|short|line|native|no]{.title-ref}.
    • Note: Even if you have [--xfail-tb]{.title-ref} set, you won't see them if [--tb=no]{.title-ref}.

    Some history:

    With pytest 8.0, [-rx]{.title-ref} or [-ra]{.title-ref} would not only turn on summary reports for xfail, but also report the tracebacks for xfail results. This caused issues with some projects that utilize xfail, but don't want to see all of the xfail tracebacks.

    This change detaches xfail tracebacks from [-rx]{.title-ref}, and now we turn on xfail tracebacks with [--xfail-tb]{.title-ref}. With this, the default [-rx]{.title-ref}/ [-ra]{.title-ref} behavior is identical to pre-8.0 with respect to xfail tracebacks. While this is a behavior change, it brings default behavior back to pre-8.0.0 behavior, which ultimately was considered the better course of action.

  • #​12281: Added support for keyword matching in marker expressions.

    Now tests can be selected by marker keyword arguments.
    Supported values are int{.interpreted-text role="class"}, (unescaped) str{.interpreted-text role="class"}, bool{.interpreted-text role="class"} & None{.interpreted-text role="data"}.

    See marker examples <marker_keyword_expression_example>{.interpreted-text role="ref"} for more information.

    -- by lovetheguitar{.interpreted-text role="user"}

  • #​12567: Added --no-fold-skipped command line option.

    If this option is set, then skipped tests in short summary are no longer grouped
    by reason but all tests are printed individually with their nodeid in the same
    way as other statuses.

    -- by pbrezina{.interpreted-text role="user"}

Improvements in existing functionality


Configuration

📅 Schedule: Branch creation - "every 4th week on Thursday before 10am" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

Copy link
Contributor Author

renovate bot commented Jul 24, 2024

Branch automerge failure

This PR was configured for branch automerge. However, this is not possible, so it has been raised as a PR instead.


  • Branch has one or more failed status checks

@renovate renovate bot force-pushed the renovate/minor-updates branch 2 times, most recently from 8e42f52 to 0c60364 Compare July 31, 2024 02:20
@renovate renovate bot force-pushed the renovate/minor-updates branch 3 times, most recently from be65503 to 4193ef7 Compare August 9, 2024 02:50
@renovate renovate bot force-pushed the renovate/minor-updates branch 2 times, most recently from 9f43c53 to 7282e11 Compare August 17, 2024 17:38
@renovate renovate bot force-pushed the renovate/minor-updates branch 2 times, most recently from 64eb07c to 13e85f8 Compare August 24, 2024 23:49
@renovate renovate bot force-pushed the renovate/minor-updates branch 2 times, most recently from d4c49b8 to 5143a5c Compare September 6, 2024 05:48
@renovate renovate bot force-pushed the renovate/minor-updates branch 2 times, most recently from f47157d to 6ea514a Compare September 14, 2024 14:24
@renovate renovate bot force-pushed the renovate/minor-updates branch 3 times, most recently from 8b4fab7 to 3380964 Compare September 22, 2024 05:27
@renovate renovate bot force-pushed the renovate/minor-updates branch 3 times, most recently from 26c03e0 to 06b8f62 Compare October 2, 2024 05:03
@renovate renovate bot force-pushed the renovate/minor-updates branch 2 times, most recently from 9ef67b6 to de0d5c5 Compare October 9, 2024 05:56
@renovate renovate bot force-pushed the renovate/minor-updates branch 3 times, most recently from 6ab6e59 to b05d135 Compare October 20, 2024 05:20
@renovate renovate bot force-pushed the renovate/minor-updates branch 3 times, most recently from 9b2aa6d to 93f32bf Compare October 30, 2024 08:48
@renovate renovate bot force-pushed the renovate/minor-updates branch from 93f32bf to 4251077 Compare November 2, 2024 11:11
@renovate renovate bot force-pushed the renovate/minor-updates branch 2 times, most recently from 5ad7e26 to cd6b104 Compare November 9, 2024 05:25
@renovate renovate bot force-pushed the renovate/minor-updates branch 2 times, most recently from 9a18a6a to a9567bf Compare November 16, 2024 02:55
@renovate renovate bot force-pushed the renovate/minor-updates branch from a9567bf to 3a076f1 Compare November 19, 2024 08:29
@jvansanten jvansanten force-pushed the renovate/minor-updates branch from 01e5839 to a85c632 Compare November 19, 2024 08:41
@jvansanten jvansanten merged commit 1b2cc3e into main Nov 19, 2024
10 checks passed
@jvansanten jvansanten deleted the renovate/minor-updates branch November 19, 2024 08:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant