chore(deps): update minor updates (master) #74
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
6.0.1
->6.1.0
^8.1.1
->^8.2.1
0.4.1
->0.4.5
Release Notes
astropy/astropy (astropy)
v6.1.0
Compare Source
==========================
New Features
astropy.coordinates
^^^^^^^^^^^^^^^^^^^
BaseCoordinateFrame
now has aposition_angle()
method, which is thesame as the
position_angle
method ofSkyCoord
instances. [#15737]By default the
SkyCoord
andBaseCoordinateFrame
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 tosucceed without warning, which has been the behaviour so far.
origin_mismatch="error"
forbids all transformations that are notpure rotations. [#16246]
astropy.io.ascii
^^^^^^^^^^^^^^^^
a mismatch between converter type and column type. [#15991]
astropy.io.registry
^^^^^^^^^^^^^^^^^^^
astropy.io.typing
has been added to provide type annotations forI/O-related functionality. [#15916]
astropy.samp
^^^^^^^^^^^^
Private Network Access proposal <https://wicg.github.io/private-network-access>
_. [#16193]astropy.table
^^^^^^^^^^^^^
Table
now has asetdefault()
method, analogous todict.setdefault()
. [#16188]astropy.units
^^^^^^^^^^^^^
Added a new module
astropy.units.typing
that provides support for type annotations related toastropy.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 theaxes
argument. [#16121]Masked
instances now support the various numpy array set operations, suchas
np.unique
andnp.isin
. [#16224]astropy.wcs
^^^^^^^^^^^
cpdis
ordet2im
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 inastropy.coordinates.representation.CylindricalDifferential.__init__
fromFalse
toTrue
, which is the intended behaviour for all subclasses ofastropy.coordinates.representation.BaseDifferential
. [#16198]astropy.cosmology
^^^^^^^^^^^^^^^^^
Cosmology
and its subclasses are now frozendataclass
objects. [#15484]The argument
verbose
in the functionz_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 bydefault 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 andpandas
. [#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 thefast_reader
argument for readingASCII tables is no longer available. [#16103]
astropy.table
^^^^^^^^^^^^^
show_in_notebook
is deprecated and it is recommended to use dedicatedtools in the Jupyter ecosystem to create interactive plots in notebooks. [#15905]
A warning is now emitted when
Quantity
values are inserted into emptyColumn
objectsvia
Table.insert_row
orTable.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()
andTableColumns.update()
methods (whichwould typically be called as
Table.columns.setdefault()
andTable.columns.update()
) have been deprecated because they can easilycorrupt the
Table
instance theTableColumns
instance is attached to.The
Table.setdefault()
andTable.update()
methods are safe. [#16154]astropy.time
^^^^^^^^^^^^
TIME_FORMATS
andTIME_DELTA_FORMATS
inastropy.time.formats
are changed from
OrderedDict
to Pythondict
. [#15491]A
FutureWarning
is now emitted when mutatingTime.location
post-initialization. [#16063]Following the removal of
np.ndarray.ptp
in Numpy v2,Time.ptp
is nowdeprecated in favor of
np.ptp
. [#16212]astropy.units
^^^^^^^^^^^^^
If any iterable such as a list of tuple was input to
Quantity
, a check wasdone 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 bedone only for values where it makes sense, i.e., instances of list and tuple. [#15752]
Units now exposes
get_converter
which returns a function thatwill 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
andErfaWarning
fromastropy.utils.exceptions
.They should be imported directly from
erfa
instead. [#15777]introspection.isinstancemethod()
andintrospection.find_mod_objs()
aredeprecated. [#15934]
astropy.utils.console.terminal_size
is now deprecated in favour ofshutil.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 theimplicit 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
andmax_cut
keywords insimple_norm
andfits2bitmap
tovmin
andvmax
. The old names are deprecated. [#15621]If
vmin == vmax
, theImageNormalize
class now maps the inputdata to 0. If
vmin > vmax
, theImageNormalize
class now raises aValueError
. [#15622]Bug Fixes
astropy.convolution
^^^^^^^^^^^^^^^^^^^
astropy.convolution.convolve
on an empty array.An exception is now raised instead. [#15840]
astropy.coordinates
^^^^^^^^^^^^^^^^^^^
Previously passing a
SkyCoord
instance to theBaseCoordinateFrame
separation()
orseparation_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 asparallax
any angle-like value.This includes types like
Column
which have a unit but are notQuantity
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 wrapwas needed. [#16241]
search_around_3d()
now always raises aUnitConversionError
if the unitsof the distances in
coord1
andcoord2
and the unit ofdistlimit
donot agree.
Previously the error was not raised if at least one of the coordinates was
empty. [#16280]
astropy.cosmology
^^^^^^^^^^^^^^^^^
ParametersAttribute.attr_name
could be Noneinstead 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 memorymapping 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
toBinTableHDU
withcharacter_as_bytes=True
. [#16358]Improved error message when instantiating a fits table with an ill-formed array. [#16363]
astropy.io.misc
^^^^^^^^^^^^^^^
table instead of raising an unexpected error. [#16237]
astropy.io.votable
^^^^^^^^^^^^^^^^^^
resulting error message previously listed all the requested column names.
Now only columns that are actually missing are shown. [#15956]
astropy.stats
^^^^^^^^^^^^^
sigma_clipped_stats
on aMaskedColumn
. [#15844]astropy.table
^^^^^^^^^^^^^
Fix a Table bug when setting items (via slice or index list) in a
bytes
typeMaskedColumn
would cause the column mask to be set to allFalse
. A common way totrigger 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 bytable.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 aQuantity
it will use bydefault a possible name defined on the quantity's
.info
. [#15848]Fix a bug where columns with
dtype=object
wouldn't be properly deep-copied usingcopy.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 wasbroken 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 itcontains 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
withTimeDelta
object. [#15830]Scalar
Time
instances are now hashable if they are not masked, also if oneuses
Masked
internally, matching the behaviour prior to astropy 6.0 (andthe 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
(<<
) ormul
(*
) ortruediv
(/
) with aUnit
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 superscriptunits (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 unitsthat raised to some power match the requested one. With this fix,
(u.m**-3).find_equivalent_units()
properly finds nothing, rather than allunits 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 formessages longer than terminal width. [#16040]
Update
report_diff_values
so the diff no longer depends on theconsole terminal size. [#16065]
Fix support in
Masked
for generalized ufuncs with more than asingle 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 alarger number of
erfa
routines to work with masked data. [#16125]astropy.visualization
^^^^^^^^^^^^^^^^^^^^^
WCSAxes
will correctly set certain defaults whenwcs.world_axis_physical_types
containscustom:
prefixes. [#15626]Fix an edge case where
quantity_support
would produce duplicate tick labels for small data ranges. [#15841]Fix a bug where
AngleFormatterLocator
andScalarFormatterLocator
wouldn't respect matplotlib.rc'saxes.unicode_minus
parameter. [#15902]Fixed a bug in
CoordinateHelper.grid
method to properly handledraw_grid=False
anddraw_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 genericcoordinate 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 thecdelt
of the returned WCS object. [#16027]Fixed a bug in
DistortionLookupTable
(which implementscpdis
anddet2im
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 evaluatingimport foo
andfoo.py
is not found, Python then readsfoo.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 fromFalse
toNone
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]
pytest-dev/pytest (pytest)
v8.2.1
Compare Source
pytest 8.2.1 (2024-05-19)
Improvements
Bug Fixes
.pytest_cache
directories becamerwx------
instead of the expectedrwxr-xr-x
.Trivial/Internal Changes
v8.2.0
Compare Source
pytest 8.2.0 (2024-04-27)
Deprecations
#12069: A deprecation warning is now raised when implementations of one of the following hooks request a deprecated
py.path.local
parameter instead of thepathlib.Path
parameter which replaced it:pytest_ignore_collect
{.interpreted-text role="hook"} - thepath
parameter - usecollection_path
instead.pytest_collect_file
{.interpreted-text role="hook"} - thepath
parameter - usefile_path
instead.pytest_pycollect_makemodule
{.interpreted-text role="hook"} - thepath
parameter - usemodule_path
instead.pytest_report_header
{.interpreted-text role="hook"} - thestartdir
parameter - usestart_path
instead.pytest_report_collectionfinish
{.interpreted-text role="hook"} - thestartdir
parameter - usestart_path
instead.The replacement parameters are available since pytest 7.0.0.
The old parameters will be removed in pytest 9.0.0.
See
legacy-path-hooks-deprecated
{.interpreted-text role="ref"} for more details.Features
#11871: Added support for reading command line arguments from a file using the prefix character
@
, like e.g.:pytest @​tests.txt
. The file must have one argument per line.See
Read arguments from file <args-from-file>
{.interpreted-text role="ref"} for details.Improvements
#11523:
pytest.importorskip
{.interpreted-text role="func"} will now issue a warning if the module could be found, but raisedImportError
{.interpreted-text role="class"} instead ofModuleNotFoundError
{.interpreted-text role="class"}.The warning can be suppressed by passing
exc_type=ImportError
topytest.importorskip
{.interpreted-text role="func"}.See
import-or-skip-import-error
{.interpreted-text role="ref"} for details.#11728: For
unittest
-based tests, exceptions during class cleanup (as raised by functions registered withTestCase.addClassCleanup <unittest.TestCase.addClassCleanup>
{.interpreted-text role="meth"}) are now reported instead of silently failing.#11777: Text is no longer truncated in the
short test summary info
section when-vv
is given.#12112: Improved namespace packages detection when
consider_namespace_packages
{.interpreted-text role="confval"} is enabled, covering more situations (like editable installs).#9502: Added
PYTEST_VERSION
{.interpreted-text role="envvar"} environment variable which is defined at the start of the pytest session and undefined afterwards. It contains the value ofpytest.__version__
, and among other things can be used to easily check if code is running from within a pytest run.Bug Fixes
#12065: Fixed a regression in pytest 8.0.0 where test classes containing
setup_method
and tests using@staticmethod
or@classmethod
would crash withAttributeError: 'NoneType' object has no attribute 'setup_method'
.Now the
request.instance <pytest.FixtureRequest.instance>
{.interpreted-text role="attr"} attribute of tests using@staticmethod
and@classmethod
is no longerNone
, but a fresh instance of the class, like in non-static methods.Previously it was
None
, and all fixtures of such tests would share a singleself
.#12135: Fixed issue where fixtures adding their finalizer multiple times to fixtures they request would cause unreliable and non-intuitive teardown ordering in some instances.
#12194: Fixed a bug with
--importmode=importlib
and--doctest-modules
where child modules did not appear as attributes in parent modules.#1489: Fixed some instances where teardown of higher-scoped fixtures was not happening in the reverse order they were initialized in.
Trivial/Internal Changes
pluggy>=1.5.0
is now required.cache <cache>
{.interpreted-text role="ref"}: create supporting files (CACHEDIR.TAG
,.gitignore
, etc.) in a temporary directory to provide atomic semantics.astral-sh/ruff (ruff)
v0.4.5
Compare Source
Ruff's language server is now in Beta
v0.4.5
marks the official Beta release ofruff server
, an integrated language server built into Ruff.ruff server
supports the same feature set asruff-lsp
, powering linting, formatting, andcode fixes in Ruff's editor integrations -- but with superior performance and
no installation required. We'd love your feedback!
You can enable
ruff server
in the VS Code extension today.To read more about this exciting milestone, check out our blog post!
Rule changes
flake8-future-annotations
] Rewordfuture-rewritable-type-annotation
(FA100
) message (#11381)pycodestyle
] Consider soft keywords forE27
rules (#11446)pyflakes
] Recommend adding unused import bindings to__all__
(#11314)pyflakes
] Update documentation and deprecateignore_init_module_imports
(#11436)pyupgrade
] Mark quotes as unnecessary for non-evaluated annotations (#11485)Formatter
quote-style = preserve
(#11490)Server
noqa
comment code actions (#11276)CLI
--output-format
as a CLI option forruff config
(#11438)Bug fixes
PLE0237
for property with setter (#11377)TCH005
forif
stmt withelif
/else
block (#11376)__future__
annotations as required for non-evaluated type annotations (#11414)flake8-pie
] Preserve parentheses inunnecessary-dict-kwargs
(#11372)pylint
] Ignore__slots__
with dynamic values (#11488)pylint
] Removetry
body from branch counting (#11487)refurb
] Respect operator precedence inFURB110
(#11464)Documentation
--preview
to the README (#11395)pycodestyle
] Clarify motivation forE713
andE714
(#11483)pyflakes
] Update docs to describe WAI behavior (F541) (#11362)pylint
] Clearly indicate what is counted as a branch (#11423)v0.4.4
Compare Source
Preview features
pycodestyle
] Ignore end-of-line comments when determining blank line rules (#11342)pylint
] Detectpathlib.Path.open
calls inunspecified-encoding
(PLW1514
) (#11288)flake8-pyi
] ImplementPYI059
(generic-not-last-base-class
) (#11233)flake8-pyi
] ImplementPYI062
(duplicate-literal-member
) (#11269)Rule changes
flake8-boolean-trap
] Allow passing booleans as positional-only arguments in code such asset(True)
(#11287)flake8-bugbear
] Ignore enum classes incached-instance-method
(B019
) (#11312)Server
ruff server
hanging after Neovim closes (#11291)Bug fixes
pylint
] Considerwith
statements fortoo-many-branches
(PLR0912
) (#11321)flake8-blind-except
,tryceratops
] Respect logged and re-raised expressions in nested statements (BLE001
,TRY201
) (#11301)__all__ = builtins.list(["foo", "bar"])
as valid__all__
definitions (#11335)v0.4.3
Compare Source
Enhancements
Preview features
refurb
] Use function range forreimplemented-operator
diagnostics (#11271)refurb
] Ignore methods inreimplemented-operator
(FURB118
) (#11270)refurb
] Implementfstring-number-format
(FURB116
) (#10921)ruff
] Implementredirected-noqa
(RUF101
) (#11052)pyflakes
] Distinguish between first-party and third-party imports for fix suggestions (#11168)Rule changes
flake8-bugbear
] Ignore non-abstract class attributes when enforcingB024
(#11210)flake8-logging
] Include inline instantiations when detecting loggers (#11154)pylint
] Also emitPLR0206
for properties with variadic parameters (#11200)ruff
] Detect duplicate codes as part ofunused-noqa
(RUF100
) (#10850)Formatter
LSP
ruff server
setup guide for Helix (#11183)ruff server
no longer hangs after shutdown (#11222)ruff server
reads from a configuration TOML file in the user configuration directory if no local configuration exists (#11225)ruff server
respectsper-file-ignores
configuration (#11224)ruff server
: Support a custom TOML configuration file (#11140)ruff server
: Support setting to prioritize project configuration over editor configuration (#11086)Bug fixes
pyflakes
] Prioritizeredefined-while-unused
overunused-import
(#11173)ruff
] Respectasync
expressions in comprehension bodies (#11219)pygrep_hooks
] Fixblanket-noqa
panic when last line has noqa with no newline (PGH004
) (#11108)perflint
] Ignore list-copy recommendations for asyncfor
loops (#11250)pyflakes
] Improveinvalid-print-syntax
documentation (#11171)Performance
v0.4.2
Compare Source
Rule changes
flake8-pyi
] Allow for overloaded__exit__
and__aexit__
definitions (PYI036
) (#11057)pyupgrade
] Catch usages of"%s" % var
and provide an unsafe fix (UP031
) (#11019)refurb
] Implement new rule that suggests min/max oversorted()
(FURB192
) (#10868)Server
noqa
codes (#11096)Bug fixes
macos-12
for building release wheels to enable macOS 11 compatibility (#11146)flake8-blind-expect
] Allow raise from inBLE001
(#11131)flake8-pyi
] Allow simple assignments toNone
in enum class scopes (PYI026
) (#11128)flake8-simplify
] Avoid raisingSIM911
for non-zip
attribute calls (#11126)refurb
] Avoidoperator.itemgetter
suggestion for single-item tuple (#11095)ruff
] Respect per-file-ignores forRUF100
with no other diagnostics (#11058)ruff
] Fix async comprehension false positive (RUF029
) (#11070)Documentation
flake8-bugbear
] Document explicitly disabling strict zip (B905
) (#11040)flake8-type-checking
] Mentionlint.typing-modules
inTCH001
,TCH002
, andTCH003
(#11144)isort
] Improve documentation around customisort
sections (#11050)pylint
] Fix documentation oversight forinvalid-X-returns
(#11094)Performance
matchit
to resolve per-file settings (#11111)Configuration
📅 Schedule: Branch creation - "every 4th week on Thursday before 10am" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR has been generated by Mend Renovate. View repository job log here.