chore(deps): update python (non-major) #127
Open
+1,040
−683
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:
==1.3.2->==1.4.0==2025.1.31->==2025.11.12==3.4.1->==3.4.4==8.1.8->==8.3.17.7.1->7.13.0==1.2.2->==1.3.1==1.5.0->==1.8.03.1.44->3.1.45==3.1.44->==3.1.45==2.38.0->==2.45.0==3.10->==3.111.37.5->1.39.1==1.37.5->==1.39.1==6.2.0->==6.7.01.15.0->1.19.1==3.2.2->==3.3.1==0.3.0->==0.4.1==0.4.1->==0.4.23.3.6->3.3.98.3.5->8.4.20.5.4->0.5.5==0.5.4->==0.5.5==6.0.2->==6.0.3==4.9->==4.9.1==4.12.2->==4.15.0==1.8.0->==1.9.0==1.18.3->==1.22.0Release Notes
aio-libs/aiosignal (aiosignal)
v1.4.0Compare Source
==================
Features
Added decorator functionality to
Signalas a convenient way to add a callback -- by@Vizonex.#​699 <https://github.com/aio-libs/aiosignal/pulls/699>_Improved type safety by allowing callback parameters to be type checked (typing-extensions is now required for Python <3.13).
Parameters for a
Signalcallback should now be defined likeSignal[int, str]-- by @Vizonex and @Dreamsorcerer.#​699 <https://github.com/aio-libs/aiosignal/pulls/699>,#​710 <https://github.com/aio-libs/aiosignal/pulls/710>Misc
#​528 <https://github.com/aio-libs/aiosignal/pull/528>_certifi/python-certifi (certifi)
v2025.11.12Compare Source
v2025.10.5Compare Source
v2025.8.3Compare Source
v2025.7.14Compare Source
v2025.7.9Compare Source
v2025.6.15Compare Source
v2025.4.26Compare Source
jawah/charset_normalizer (charset-normalizer)
v3.4.4Compare Source
Changed
setuptoolsto a specific constraintsetuptools>=68,<=81.Removed
setuptools-scmas a build dependency.Misc
dev-requirements.txtand createdci-requirements.txtfor security purposes.multiple.intoto.jsonlin GitHub releases in addition to individual attestation file per wheel.v3.4.3Compare Source
Changed
CHARSET_NORMALIZER_USE_MYPYCisn't set to1. (#595) (#583)detectoutput legacy function. (#391)Added
Fixed
Misc
Each published wheel comes with its SBOM. We choose CycloneDX as the format.
v3.4.2Compare Source
Fixed
argparse.FileTypeby backporting the target class into the package. (#591)Changed
pallets/click (click)
v8.3.1Compare Source
Released 2025-11-15
subprocess.Popen. :issue:3039:pr:
3055Sentinel.UNSETdefault values byNoneas they're passed throughthe
Context.invoke()method. :issue:3066:issue:3065:pr:3068Sentinel.UNSEThappening too early, which caused incorrectbehavior for multiple parameters using the same name. :issue:
3071:pr:3079Sentinel.UNSETvalues asNonewhen looking up for other parametersthrough the context inside parameter callbacks. :issue:
3136:pr:3137promptandconfirmparameterprompt_suffixisempty. :issue:
3019:pr:3021Sentinel.UNSETis found during parsing, it will skip calls totype_cast_value. :issue:3069:pr:3090v8.3.0Compare Source
Released 2025-09-17
Improved flag option handling: Reworked the relationship between
flag_valueand
defaultparameters for better consistency:defaultparameter value is now preserved as-is and passed directlyto CLI functions (no more unexpected transformations)
default=Truemaintain backward compatibilityby defaulting to their
flag_valuedefaultparameter can now be any type (bool,None, etc.)1992:issue:2514:issue:2610:issue:
3024:pr:3030Allow
defaultto be set onArgumentfornargs = -1. :issue:2164:pr:
3030Show correct auto complete value for
nargsoption in combination with flagoption :issue:
2813Fix handling of quoted and escaped parameters in Fish autocompletion. :issue:
2995:pr:3013Lazily import
shutil. :pr:3023Properly forward exception information to resources registered with
click.core.Context.with_resource(). :issue:2447:pr:3058Fix regression related to EOF handling in CliRunner. :issue:
2939:pr:2940v8.2.2Compare Source
Released 2025-07-31
default,flag_valueandtypeparameters forflag options, as well as parsing and normalization of environment variables.
:issue:
2952:pr:2956BadParameterandMissingParameterexceptions for theparameter
param_hintthat did not allow for a sequence of string where theunderlying function
_join_param_hintsallows for it. :issue:2777:pr:2990Enumchoices to render their default value in helpscreen. Refs :issue:
2911:pr:3004zsh) for completion items containingcolons. :issue:
2703:pr:28462971:pr:2972click.testing.StreamMixer's finalization that manifestedas a
ValueErroron close in a multi-threaded test session.:issue:
2993:pr:2991v8.2.1Compare Source
Released 2025-05-20
2894:issue:
2897:pr:29302906:pr:2907sys.stderrat the end ofCliRunner.invoke. :issue:26822787v8.2.0Compare Source
Released 2025-05-10
Drop support for Python 3.7, 3.8, and 3.9. :pr:
2588:pr:2893Use modern packaging metadata with
pyproject.tomlinstead ofsetup.cfg.:pr:
2438Use
flit_coreinstead ofsetuptoolsas build backend. :pr:2543Deprecate the
__version__attribute. Use feature detection, orimportlib.metadata.version("click"), instead. :issue:2598BaseCommandis deprecated.Commandis the base class for allcommands. :issue:
2589MultiCommandis deprecated.Groupis the base class for all groupcommands. :issue:
2590The current parser and related classes and methods, are deprecated.
:issue:
2205OptionParserand theparsermodule, which is a modified copy ofoptparsein the standard library.Context.protected_argsis unneeded.Context.argscontains anyremaining arguments while parsing.
Parameter.add_to_parser(on bothArgumentandOption) isunneeded. Parsing works directly without building a separate parser.
split_arg_stringis moved fromparsertoshell_completion.Enable deferred evaluation of annotations with
from __future__ import annotations. :pr:2270When generating a command's name from a decorated function's name, the
suffixes
_command,_cmd,_group, and_grpare removed.:issue:
2322Show the
types.ParamType.namefortypes.Choiceoptions within--helpmessage ifshow_choices=Falseis specified.:issue:
2356Do not display default values in prompts when
Option.show_defaultisFalse. :pr:2509Add
get_help_extramethod onOptionto fetch the generated extraitems used in
get_help_recordto render help text. :issue:2516:pr:
2517Keep stdout and stderr streams independent in
CliRunner. Alwayscollect stderr output and never raise an exception. Add a new
output stream to simulate what the user sees in its terminal. Removes
the
mix_stderrparameter inCliRunner. :issue:2522:pr:2523Option.show_envvarnow also shows environment variable in error messages.:issue:
2695:pr:2696Context.closewill be called on exit. This results in allContext.call_on_closecallbacks and context managers added viaContext.with_resourceto be closed on exit as well. :pr:2680Add
ProgressBar(hidden: bool)to allow hiding the progressbar. :issue:2609A
UserWarningwill be shown when multiple parameters attempt to use thesame name. :issue:
2396When using
Option.envvarwithOption.flag_value, theflag_valuewill always be used instead of the value of the environment variable.
:issue:
2746:pr:2788Add
Choice.get_invalid_choice_messagemethod for customizing theinvalid choice message. :issue:
2621:pr:2622If help is shown because
no_args_is_helpis enabled (defaults toTruefor groups,
Falsefor commands), the exit code is 2 instead of 0.:issue:
1489:pr:1489Contexts created during shell completion are closed properly, fixing
a
ResourceWarningwhen usingclick.File. :issue:2644:pr:2800:pr:
2767click.edit(filename)now supports passing an iterable of filenames incase the editor supports editing multiple files at once. Its return type
is now also typed:
AnyStriftextis passed, otherwiseNone.:issue:
2067:pr:2068Specialized typing of
progressbar(length=...)asProgressBar[int].:pr:
2630Improve
echo_via_pagerbehaviour in face of errors.:issue:
2674echo_via_pagerraises an exception.
to terminate.
echo_via_pagerwill not ignoreKeyboardInterruptanymore. Thisallows the user to search for future output of the generator when
using less and then aborting the program using ctrl-c.
deprecated: bool | strcan now be used on options and arguments. Thispreviously was only available for
Command. The message can now also becustomised by using a
strinstead of abool. :issue:2263:pr:2271Command.deprecatedformatting in--helpchanged from(Deprecated) helptohelp (DEPRECATED).Add a
catch_exceptionsparameter toCliRunner. Ifcatch_exceptionsis not passed toCliRunner.invoke, the valuefrom
CliRunneris used. :issue:2817:pr:2818Option.flag_valuewill no longer have a default value set based onOption.defaultifOption.is_flagisFalse. This results inOption.defaultnot needing to implement__bool__. :pr:2829Incorrect
click.edittyping has been corrected. :pr:2804Choiceis now generic and supports any iterable value.This allows you to use enums and other non-
strvalues. :pr:2796:issue:
605Fix setup of help option's defaults when using a custom class on its
decorator. Removes
HelpOption. :issue:2832:pr:2840coveragepy/coveragepy (coverage)
v7.13.0Compare Source
Feature: coverage.py now supports :file:
.coveragerc.tomlconfigurationfiles. These files use TOML syntax and take priority over
:file:
pyproject.tomlbut lower priority than :file:.coveragercfiles.Closes
issue 1643_ thanks toOlena Yefymenko <pull 1952_>_.Fix: we now include a permanent .pth file which is installed with the code,
fixing
issue 2084. In 7.12.1b1 this was done incorrectly: it didn't workwhen using the source wheel (
py3-none-any). This is now fixed. Thanks,Henry Schreiner <pull 2100_>.Deprecated: when coverage.py is installed, it creates three command entry
points:
coverage,coverage3, andcoverage-3.10(if installed forPython 3.10). The second and third of these are not needed and will
eventually be removed. They still work for now, but print a message about
their deprecation.
.. _issue 1643: #1643
.. _pull 1952: #1952
.. _pull 2100: #2100
.. _changes_7-12-1b1:
v7.12.0Compare Source
The HTML report now shows separate coverage totals for statements and
branches, as well as the usual combined coverage percentage. Thanks to Ryuta
Otsuka for the
discussion <issue 2081_>_ and theimplementation <pull 2085_>_.The JSON report now includes separate coverage totals for statements and
branches, thanks to
Ryuta Otsuka <pull 2090_>_.Fix:
except*clauses were not handled properly under the "sysmon"measurement core, causing KeyError exceptions as described in
issue 2086_.This is now fixed.
Fix: we now defend against aggressive mocking of
open()that could causeerrors inside coverage.py. An example of a failure is in
issue 2083_.Fix: in unusual cases where a test suite intentionally exhausts the system's
file descriptors to test handling errors in
open(), coverage.py wouldfail when trying to open source files, as described in
issue 2091_. Thisis now fixed.
A small tweak to the HTML report: file paths now use thin spaces around
slashes to make them easier to read.
.. _issue 2081: #2081
.. _issue 2083: #2083
.. _pull 2085: #2085
.. _issue 2086: #2086
.. _pull 2090: #2090
.. _issue 2091: #2091
.. _changes_7-11-3:
v7.11.3Compare Source
Fix: the 7.11.1 changes meant that conflicts between a requested measurement
core and other settings would raise an error. This was a breaking change from
previous behavior, as reported in
issue 2076_ andissue 2078_.The previous behavior has been restored: when the requested core conflicts
with other settings, another core is used instead, and a warning is issued.
For contributors: the repo has moved from Ned's
nedbat GitHub account_ tothe
coveragepy GitHub organization_. The default branch has changed frommaster to main.
.. _issue 2076: #2076
.. _issue 2078: #2078
.. _nedbat GitHub account: https://github.com/nedbat
.. _coveragepy GitHub organization: https://github.com/coveragepy
.. _changes_7-11-2:
v7.11.2Compare Source
Fix: using the "sysmon" measurement core in 7.11.1, if Python code was
claimed to come from a non-Python file, a
NotPythonexception could beraised. This could happen for example with Jinja templates compiled to
Python, as reported in
issue 2077_. This is now fixed.Doc: corrected the first entry in the 7.11.1 changelog.
.. _issue 2077: #2077
.. _changes_7-11-1:
v7.11.1Compare Source
Fix: some chanages to details of how the measurement core is chosen, and how
conflicting settings are handled. The "sysmon" core cannot be used with some
conurrency settings, with dynamic context, and in Python 3.12/3.13, with
branch measurement.
If the core is not specified and defaults to "sysmon" (Python 3.14+), but
other settings conflict with sysmon, then the "ctrace" core will be used
instead with no warning. For concurrency conflicts, this used to produce an
error, as described in
issue 2064_.If the "sysmon" core is explicitly requested in your configuration, but
other settings conflict, an error is now raised. This used to produce a
warning.
Fix: some multi-line case clauses or for loops (and probably other
constructs) could cause incorrect claims of missing branches with the
sys.monitoring core, as described in
issue 2070_. This is now fixed.Fix: when running in pytest under coverage, a
breakpoint()would stop inthe wrong frame, one level down from where it should, as described in
issue 1420_. This was due to a coverage change in v6.4.1 that seemed to give aslight performance improvement, but I couldn't reproduce the performance
gain, so it's been reverted, fixing the debugger problem.
A new debug option
--debug=coreshows which core is in use and why.Split
sqlitedebugging information out of thesys:ref:coverage debug <cmd_debug>and :ref:cmd_run_debugoptions since it's bulky and notvery useful.
Updated the :ref:
howitworkspage to better describe the three differentmeasurement cores.
.. _issue 1420: #1420
.. _issue 2064: #2064
.. _issue 2070: #2070
.. _changes_7-11-0:
v7.11.0Compare Source
.. _changes_7-10-7:
v7.10.7Compare Source
Performance: with branch coverage in large files, generating HTML, JSON, or
LCOV reports could take far too long due to some quadratic behavior when
creating the function and class index pages. This is now fixed, closing
issue 2048_. Thanks to Daniel Diniz for help diagnosing the problem.Most warnings and a few errors now have links to a page in the docs
explaining the specific message. Closes
issue 1921_... _issue 1921: #1921
.. _issue 2048: #2048
.. _changes_7-10-6:
v7.10.6Compare Source
Fix:
sourcedirectories were not properly communicated to subprocessesthat ran in different directories, as reported in
issue 1499_. This is nowfixed.
Performance:
Alex Gaynor continues fine-tuning <pull 2038_>_ the speed ofcombination, especially with many contexts.
.. _issue 1499: #1499
.. _pull 2038: #2038
.. _changes_7-10-5:
v7.10.5Compare Source
coverage combine: it's now about twice asfast! Huge thanks to Alex Gaynor for pull requests
2032 <pull 2032_>,2033 <pull 2033_>, and2034 <pull 2034_>_... _pull 2032: #2032
.. _pull 2033: #2033
.. _pull 2034: #2034
.. _changes_7-10-4:
v7.10.4Compare Source
Added
patch = forkfor times when the built-in forking support isinsufficient.
Fix:
patch = execvalso inherits the entire coverage configuration now... _changes_7-10-3:
v7.10.3Compare Source
Fixes for
patch = subprocess:If subprocesses spawned yet more subprocesses simultaneously, some coverage
could be missed. This is now fixed, closing
issue 2024_.If subprocesses were created in other directories, their data files were
stranded there and not combined into the totals, as described in
issue 2025_. This is now fixed.On Windows (or maybe only some Windows?) the patch would fail with a
ModuleNotFounderror trying to import coverage. This is now fixed,closing
issue 2022_.Originally only options set in the coverage configuration file would apply
to subprocesses. Options set on the
coverage runcommand line (such as--branch) wouldn't be communicated to the subprocesses. This couldlead to combining failures, as described in
issue 2021_. Now the entireconfiguration is used in subprocesses, regardless of its origin.
Added
debug=patchto help diagnose problems.Fix: really close all SQLite databases, even in-memory ones. Closes
issue 2017_... _issue 2017: #2017
.. _issue 2021: #2021
.. _issue 2022: #2022
.. _issue 2024: #2024
.. _issue 2025: #2025
.. _changes_7-10-2:
v7.10.2Compare Source
actually executed. This is now fixed, closing
issue 1999_. Python 3.9still shows the problem.
.. _issue 1999: #1999
.. _changes_7-10-1:
v7.10.1Compare Source
Fix: the exclusion for
if TYPE_CHECKING:was wrong: it marked the branchas partial, but it should have been a line exclusion so the entire clause
would be excluded. Improves
issue 831_.Fix: changed where .pth files are written for
patch = subprocess, closingissue 2006_... _issue 2006: #2006
.. _changes_7-10-0:
v7.10.0Compare Source
A new configuration option: ":ref:
config_run_patch" specifies named patchesto work around some limitations in coverage measurement. These patches are
available:
patch = _exitlets coverage save its data even when :func:os._exit() <python:os._exit>is used to abruptly end the process. This closeslong-standing
issue 310_ as well as its duplicates:issue 312,issue 1673,issue 1845, andissue 1941.patch = subprocessmeasures coverage in Python subprocesses createdwith :mod:
subprocess, :func:os.system, or one of the :func:execv <python:os.execl>or :func:spawnv <python:os.spawnl>family offunctions. Closes old
issue 367, its duplicateissue 378and oldissue 689_.patch = execvadjusts the :func:execv <python:os.execl>family offunctions to save coverage data before ending the current program and
starting the next. Not available on Windows. Closes
issue 43_ after 15years!
The HTML report now dimly colors subsequent lines in multi-line statements.
They used to have no color. This gives a better indication of the amount of
code missing in the report. Closes
issue 1308_.Two new exclusion patterns are part of the defaults:
...is automaticallyexcluded as a line and
if TYPE_CHECKING:is excluded as a branch. Closesissue 831_.A new command-line option:
--save-signal=USR1specifies a signal thatcoverage.py will listen for. When the signal is sent, the coverage data will
be saved. This makes it possible to save data from within long-running
processes. Thanks,
Arkady Gilinsky <pull 1998_>_.A new configuration option: ":ref:
config_report_partial_also" is a list ofregexes to add as pragmas for partial branches. This parallels the
":ref:
config_report_exclude_also" setting for adding line exclusionpatterns.
A few file path configuration settings didn't allow for tilde expansion:
:ref:
config_json_output, :ref:config_lcov_outputand:ref:
config_run_debug_file. This is now fixed.Wheels are included for 3.14 now that 3.14 rc1 is available.
We no longer ship a PyPy-specific wheel. PyPy will install the pure-Python
wheel. Closes
issue 2001_.In the very unusual situation of not having a current frame, coverage no
longer crashes when using the sysmon core, fixing
issue 2005_... _issue 43: #43
.. _issue 310: #310
.. _issue 312: #312
.. _issue 367: #367
.. _issue 378: #378
.. _issue 689: #689
.. _issue 831: #831
.. _issue 1308: #1308
.. _issue 1673: #1673
.. _issue 1845: #1845
.. _issue 1941: #1941
.. _pull 1998: #1998
.. _issue 2001: #2001
.. _issue 2005: #2005
.. _changes_7-9-2:
v7.9.2Compare Source
Fix: complex conditionals within a line might cause a KeyError when using
sys.monitoring, as reported in
issue 1991_. This is now fixed.Fix: we can now measure coverage for code in Python archive (.par) files.
Thanks,
Itamer Oren <pull 1984_>_... _pull 1984: #1984
.. _issue 1991: #1991
.. _changes_7-9-1:
v7.9.1Compare Source
The "no-ctracer" warning is not issued for Python pre-release versions.
Coverage doesn't ship compiled wheels for those versions, so this was far too
noisy.
On Python 3.14+, the "sysmon" core is now the default if it's supported for
your configuration. Plugins and dynamic contexts are still not supported
with it.
.. _changes_7-9-0:
v7.9.0Compare Source
Added a
[run] coreconfiguration setting to specify the measurement core,which was previously only available through the COVERAGE_CORE environment
variable. Finishes
issue 1746_.Fixed incorrect rendering of f-strings with doubled braces, closing
issue 1980_.If the C tracer core can't be imported, a warning ("no-ctracer") is issued
with the reason.
The C tracer core extension module now conforms to
PEP 489, closingissue 1977. Thanks,Adam Turner <pull 1978_>_.Fixed a "ValueError: min() arg is an empty sequence" error caused by strange
empty modules, found by
oss-fuzz_... _issue 1746: #1746
.. _issue 1977: #1977
.. _pull 1978: #1978
.. _issue 1980: #1980
.. _PEP 489: https://peps.python.org/pep-0489
.. _oss-fuzz: https://google.github.io/oss-fuzz/
.. _changes_7-8-2:
v7.8.2Compare Source
Thanks,
Finn Womack <pull 1972_>_... _issue 1971: #1971
.. _pull 1972: #1972
.. _changes_7-8-1:
v7.8.1Compare Source
A number of EncodingWarnings were fixed that could appear if you've enabled
PYTHONWARNDEFAULTENCODING, fixing
issue 1966. Thanks,Henry Schreiner <pull 1967_>.Fixed a race condition when using sys.monitoring with free-threading Python,
closing
issue 1970_... _issue 1966: #1966
.. _pull 1967: #1967
.. _issue 1970: #1970
.. _changes_7-8-0:
v7.8.0Compare Source
Added a new
source_dirssetting for symmetry with the existingsource_pkgssetting. It's preferable to the existingsourcesetting,because you'll get a clear error when directories don't exist. Fixes
issue 1942. Thanks,Jeremy Fleischman <pull 1943_>.Fix: the PYTHONSAFEPATH environment variable new in Python 3.11 is properly
supported, closing
issue 1696. Thanks,Philipp A. <pull 1700_>. Thisworks properly except for a detail when using the
coveragecommand onWindows. There you can use
python -m coverageinstead if you need exactemulation.
.. _issue 1696: #1696
.. _pull 1700: #1700
.. _issue 1942: #1942
.. _pull 1943: #1943
.. _changes_7-7-1:
agronholm/exceptiongroup (exceptiongroup)
v1.3.1Compare Source
AttributeError: 'TracebackException' object has no attribute 'exceptions'when formatting unpickled TBEs from another Python process which did not apply theexceptiongrouppatches (#144)v1.3.0Compare Source
**kwargsto function and method signatures as appropriate to match the signatures in the standard library(Base)ExceptionGroupgeneric types to define defaults for their generic arguments (defaulting toBaseExceptionGroup[BaseException]andExceptionGroup[Exception]) (PR by @mikenerone)BaseExceptionGroup.__init__()to directly callBaseException.__init__()instead of the superclass__init__()in order to emulate the CPython behavior (broken or not) (PR by @cfbolz)exceptionsattribute to always return the same tuple of exceptions, created from the original exceptions sequence passed toBaseExceptionGroupto match CPython behavior (#143)aio-libs/frozenlist (frozenlist)
v1.8.0Compare Source
======
(2025-10-05)
Contributor-facing changes
The :file:
reusable-cibuildwheel.ymlworkflow has been refactored tobe more generic and :file:
ci-cd.ymlnow holds all the configurationtoggles -- by :user:
webknjaz.Related issues and pull requests on GitHub:
:issue:
668.When building wheels, the source distribution is now passed directly
to the
cibuildwheelinvocation -- by :user:webknjaz.Related issues and pull requests on GitHub:
:issue:
669.Builds and tests have been added to
ci-cd.ymlfor arm64 Windows wheels -- by :user:finnagin.Related issues and pull requests on GitHub:
:issue:
677.Started building wheels for CPython 3.14 -- by :user:
kumaraditya303.Related issues and pull requests on GitHub:
:issue:
681, :issue:682.Removed
--config-settings=pure-python=falsefrom :file:requirements/dev.txt.Developers on CPython still get accelerated builds by default. To explicitly build
a pure Python wheel, use
pip install -e . --config-settings=pure-python=true-- by :user:
bdraco.Related issues and pull requests on GitHub:
:issue:
687.v1.7.0Compare Source
======
(2025-06-09)
Features
Added deepcopy support to FrozenList -- by :user:
bdraco.Related issues and pull requests on GitHub:
:issue:
659.Packaging updates and notes for downstreams
Fixed an issue where
frozenlistbinary wheels would be built with debugging symbols and line tracing enabled, which significantly impacted performance. Line tracing is now disabled by default and can only be enabled explicitly -- by :user:bdraco.This change ensures that production builds are optimized for performance. Developers who need line tracing for debugging purposes can still enable it by:
FROZENLIST_CYTHON_TRACINGenvironment variable--config-setting=with-cython-tracing=trueoption with pipRelated issues and pull requests on GitHub:
:issue:
660.Enabled
PIP_CONSTRAINTenvironment variable in the build configuration to ensure the pinned Cython version fromrequirements/cython.txtis used during wheel builds.Related issues and pull requests on GitHub:
:issue:
661.v1.6.2Compare Source
======
(2025-06-03)
No significant changes.
v1.6.1Compare Source
======
(2025-06-02)
Bug fixes
Correctly use
cimportfor includingPyBool_FromLong-- by :user:lysnikolaou.Related issues and pull requests on GitHub:
:issue:
653.Packaging updates and notes for downstreams
Exclude
_frozenlist.cppfrom bdists/wheels -- by :user:musicinmybrain.Related issues and pull requests on GitHub:
:issue:
649.Updated to use Cython 3.1 universally across the build path -- by :user:
lysnikolaou.Related issues and pull requests on GitHub:
:issue:
654.v1.6.0Compare Source
======
(2025-04-17)
Bug fixes
Stopped implicitly allowing the use of Cython pre-release versions when
building the distribution package -- by :user:
ajsanchezsanzand:user:
markgreene74.Related commits on GitHub:
:commit:
41591f2.Features
Implemented support for the free-threaded build of CPython 3.13 -- by :user:
lysnikolaou.Related issues and pull requests on GitHub:
:issue:
618.Started building armv7l wheels -- by :user:
bdraco.Related issues and pull requests on GitHub:
:issue:
642.Packaging updates and notes for downstreams
Stopped implicitly allowing the use of Cython pre-release versions when
building the distribution package -- by :user:
ajsanchezsanzand:user:
markgreene74.Related commits on GitHub:
:commit:
41591f2.Started building wheels for the free-threaded build of CPython 3.13 -- by :user:
lysnikolaou.Related issues and pull requests on GitHub:
:issue:
618.The packaging metadata switched to including an SPDX license identifier introduced in :pep:
639-- by :user:cdce8p.Related issues and pull requests on GitHub:
:issue:
639.Contributor-facing changes
GitHub Actions CI/CD is now configured to manage caching pip-ecosystem
dependencies using
re-actors/cache-python-deps_ -- an action by:user:
webknjazthat takes into account ABI stability and the exactversion of Python runtime.
.. _
re-actors/cache-python-deps:https://github.com/marketplace/actions/cache-python-deps
Related issues and pull requests on GitHub:
:issue:
633.Organized dependencies into test and lint dependencies so that no
unnecessary ones are installed during CI runs -- by :user:
lysnikolaou.Related issues and pull requests on GitHub:
:issue:
636.gitpython-developers/GitPython (gitpython)
v3.1.45Compare Source
What's Changed
SECURITY.mdfiles by @EliahKagan in #1992test_installationby @EliahKagan in #2007test_installationxfail on Cygwin CI by @EliahKagan in #2009IndexFile._to_relative_path- fix case where absolute path gets stripped of trailing slash by @kamilkozik7 in #2012uname-cmdthat doesn't point to an executable file by @gcmarx in #2026Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ 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.
This PR was generated by Mend Renovate. View the repository job log.