Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented May 24, 2024

Note: This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Confidence
aiosignal ==1.3.2 -> ==1.4.0 age confidence
certifi ==2025.1.31 -> ==2025.11.12 age confidence
charset-normalizer (changelog) ==3.4.1 -> ==3.4.4 age confidence
click (changelog) ==8.1.8 -> ==8.3.1 age confidence
coverage 7.7.1 -> 7.13.0 age confidence
exceptiongroup (changelog) ==1.2.2 -> ==1.3.1 age confidence
frozenlist ==1.5.0 -> ==1.8.0 age confidence
gitpython 3.1.44 -> 3.1.45 age confidence
gitpython ==3.1.44 -> ==3.1.45 age confidence
google-auth ==2.38.0 -> ==2.45.0 age confidence
idna (changelog) ==3.10 -> ==3.11 age confidence
kopf 1.37.5 -> 1.39.1 age confidence
kopf ==1.37.5 -> ==1.39.1 age confidence
multidict ==6.2.0 -> ==6.7.0 age confidence
mypy (changelog) 1.15.0 -> 1.19.1 age confidence
oauthlib ==3.2.2 -> ==3.3.1 age confidence
propcache ==0.3.0 -> ==0.4.1 age confidence
pyasn1-modules (changelog) ==0.4.1 -> ==0.4.2 age confidence
pylint (changelog) 3.3.6 -> 3.3.9 age confidence
pytest (changelog) 8.3.5 -> 8.4.2 age confidence
python-gnupg 0.5.4 -> 0.5.5 age confidence
python-gnupg ==0.5.4 -> ==0.5.5 age confidence
pyyaml (source) ==6.0.2 -> ==6.0.3 age confidence
rsa ==4.9 -> ==4.9.1 age confidence
typing-extensions (changelog) ==4.12.2 -> ==4.15.0 age confidence
websocket-client (source) ==1.8.0 -> ==1.9.0 age confidence
yarl ==1.18.3 -> ==1.22.0 age confidence

Release Notes

aio-libs/aiosignal (aiosignal)

v1.4.0

Compare Source

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

Features

  • Added decorator functionality to Signal as a convenient way to add a callback -- by @Vizonex.
    #&#8203;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 Signal callback should now be defined like Signal[int, str] -- by @​Vizonex and @​Dreamsorcerer.
    #&#8203;699 <https://github.com/aio-libs/aiosignal/pulls/699>, #&#8203;710 <https://github.com/aio-libs/aiosignal/pulls/710>

Misc

  • Removed the sphinxcontrib-asyncio documentation dependency.
    #&#8203;528 <https://github.com/aio-libs/aiosignal/pull/528>_

certifi/python-certifi (certifi)

v2025.11.12

Compare Source

v2025.10.5

Compare Source

v2025.8.3

Compare Source

v2025.7.14

Compare Source

v2025.7.9

Compare Source

v2025.6.15

Compare Source

v2025.4.26

Compare Source

jawah/charset_normalizer (charset-normalizer)

v3.4.4

Compare Source

Changed
  • Bound setuptools to a specific constraint setuptools>=68,<=81.
  • Raised upper bound of mypyc for the optional pre-built extension to v1.18.2
Removed
  • setuptools-scm as a build dependency.
Misc
  • Enforced hashes in dev-requirements.txt and created ci-requirements.txt for security purposes.
  • Additional pre-built wheels for riscv64, s390x, and armv7l architectures.
  • Restore multiple.intoto.jsonl in GitHub releases in addition to individual attestation file per wheel.

v3.4.3

Compare Source

Changed
  • mypy(c) is no longer a required dependency at build time if CHARSET_NORMALIZER_USE_MYPYC isn't set to 1. (#​595) (#​583)
  • automatically lower confidence on small bytes samples that are not Unicode in detect output legacy function. (#​391)
Added
  • Custom build backend to overcome inability to mark mypy as an optional dependency in the build phase.
  • Support for Python 3.14
Fixed
  • sdist archive contained useless directories.
  • automatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (#​633)
Misc
  • SBOM are automatically published to the relevant GitHub release to comply with regulatory changes.
    Each published wheel comes with its SBOM. We choose CycloneDX as the format.
  • Prebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.

v3.4.2

Compare Source

Fixed
  • Addressed the DeprecationWarning in our CLI regarding argparse.FileType by backporting the target class into the package. (#​591)
  • Improved the overall reliability of the detector with CJK Ideographs. (#​605) (#​587)
Changed
  • Optional mypyc compilation upgraded to version 1.15 for Python >= 3.8
pallets/click (click)

v8.3.1

Compare Source

Released 2025-11-15

  • Don't discard pager arguments by correctly using subprocess.Popen. :issue:3039
    :pr:3055
  • Replace Sentinel.UNSET default values by None as they're passed through
    the Context.invoke() method. :issue:3066 :issue:3065 :pr:3068
  • Fix conversion of Sentinel.UNSET happening too early, which caused incorrect
    behavior for multiple parameters using the same name. :issue:3071 :pr:3079
  • Hide Sentinel.UNSET values as None when looking up for other parameters
    through the context inside parameter callbacks. :issue:3136 :pr:3137
  • Fix rendering when prompt and confirm parameter prompt_suffix is
    empty. :issue:3019 :pr:3021
  • When Sentinel.UNSET is found during parsing, it will skip calls to
    type_cast_value. :issue:3069 :pr:3090

v8.3.0

Compare Source

Released 2025-09-17

  • Improved flag option handling: Reworked the relationship between flag_value
    and default parameters for better consistency:

    • The default parameter value is now preserved as-is and passed directly
      to CLI functions (no more unexpected transformations)
    • Exception: flag options with default=True maintain backward compatibility
      by defaulting to their flag_value
    • The default parameter can now be any type (bool, None, etc.)
    • Fixes inconsistencies reported in: :issue:1992 :issue:2514 :issue:2610
      :issue:3024 :pr:3030
  • Allow default to be set on Argument for nargs = -1. :issue:2164
    :pr:3030

  • Show correct auto complete value for nargs option in combination with flag
    option :issue:2813

  • Fix handling of quoted and escaped parameters in Fish autocompletion. :issue:2995 :pr:3013

  • Lazily import shutil. :pr:3023

  • Properly forward exception information to resources registered with
    click.core.Context.with_resource(). :issue:2447 :pr:3058

  • Fix regression related to EOF handling in CliRunner. :issue:2939 :pr:2940

v8.2.2

Compare Source

Released 2025-07-31

  • Fix reconciliation of default, flag_value and type parameters for
    flag options, as well as parsing and normalization of environment variables.
    :issue:2952 :pr:2956
  • Fix typing issue in BadParameter and MissingParameter exceptions for the
    parameter param_hint that did not allow for a sequence of string where the
    underlying function _join_param_hints allows for it. :issue:2777 :pr:2990
  • Use the value of Enum choices to render their default value in help
    screen. Refs :issue:2911 :pr:3004
  • Fix completion for the Z shell (zsh) for completion items containing
    colons. :issue:2703 :pr:2846
  • Don't include envvar in error hint when not configured. :issue:2971 :pr:2972
  • Fix a rare race in click.testing.StreamMixer's finalization that manifested
    as a ValueError on close in a multi-threaded test session.
    :issue:2993 :pr:2991

v8.2.1

Compare Source

Released 2025-05-20

  • Fix flag value handling for flag options with a provided type. :issue:2894
    :issue:2897 :pr:2930
  • Fix shell completion for nested groups. :issue:2906 :pr:2907
  • Flush sys.stderr at the end of CliRunner.invoke. :issue:2682
  • Fix EOF handling for stdin input in CliRunner. :issue:2787

v8.2.0

Compare Source

Released 2025-05-10

  • Drop support for Python 3.7, 3.8, and 3.9. :pr:2588 :pr:2893

  • Use modern packaging metadata with pyproject.toml instead of setup.cfg.
    :pr:2438

  • Use flit_core instead of setuptools as build backend. :pr:2543

  • Deprecate the __version__ attribute. Use feature detection, or
    importlib.metadata.version("click"), instead. :issue:2598

  • BaseCommand is deprecated. Command is the base class for all
    commands. :issue:2589

  • MultiCommand is deprecated. Group is the base class for all group
    commands. :issue:2590

  • The current parser and related classes and methods, are deprecated.
    :issue:2205

    • OptionParser and the parser module, which is a modified copy of
      optparse in the standard library.
    • Context.protected_args is unneeded. Context.args contains any
      remaining arguments while parsing.
    • Parameter.add_to_parser (on both Argument and Option) is
      unneeded. Parsing works directly without building a separate parser.
    • split_arg_string is moved from parser to shell_completion.
  • Enable deferred evaluation of annotations with
    from __future__ import annotations. :pr:2270

  • When generating a command's name from a decorated function's name, the
    suffixes _command, _cmd, _group, and _grp are removed.
    :issue:2322

  • Show the types.ParamType.name for types.Choice options within
    --help message if show_choices=False is specified.
    :issue:2356

  • Do not display default values in prompts when Option.show_default is
    False. :pr:2509

  • Add get_help_extra method on Option to fetch the generated extra
    items used in get_help_record to render help text. :issue:2516
    :pr:2517

  • Keep stdout and stderr streams independent in CliRunner. Always
    collect stderr output and never raise an exception. Add a new
    output stream to simulate what the user sees in its terminal. Removes
    the mix_stderr parameter in CliRunner. :issue:2522 :pr:2523

  • Option.show_envvar now also shows environment variable in error messages.
    :issue:2695 :pr:2696

  • Context.close will be called on exit. This results in all
    Context.call_on_close callbacks and context managers added via
    Context.with_resource to be closed on exit as well. :pr:2680

  • Add ProgressBar(hidden: bool) to allow hiding the progressbar. :issue:2609

  • A UserWarning will be shown when multiple parameters attempt to use the
    same name. :issue:2396

  • When using Option.envvar with Option.flag_value, the flag_value
    will always be used instead of the value of the environment variable.
    :issue:2746 :pr:2788

  • Add Choice.get_invalid_choice_message method for customizing the
    invalid choice message. :issue:2621 :pr:2622

  • If help is shown because no_args_is_help is enabled (defaults to True
    for groups, False for commands), the exit code is 2 instead of 0.
    :issue:1489 :pr:1489

  • Contexts created during shell completion are closed properly, fixing
    a ResourceWarning when using click.File. :issue:2644 :pr:2800
    :pr:2767

  • click.edit(filename) now supports passing an iterable of filenames in
    case the editor supports editing multiple files at once. Its return type
    is now also typed: AnyStr if text is passed, otherwise None.
    :issue:2067 :pr:2068

  • Specialized typing of progressbar(length=...) as ProgressBar[int].
    :pr:2630

  • Improve echo_via_pager behaviour in face of errors.
    :issue:2674

    • Terminate the pager in case a generator passed to echo_via_pager
      raises an exception.
    • Ensure to always close the pipe to the pager process and wait for it
      to terminate.
    • echo_via_pager will not ignore KeyboardInterrupt anymore. This
      allows the user to search for future output of the generator when
      using less and then aborting the program using ctrl-c.
  • deprecated: bool | str can now be used on options and arguments. This
    previously was only available for Command. The message can now also be
    customised by using a str instead of a bool. :issue:2263 :pr:2271

    • Command.deprecated formatting in --help changed from
      (Deprecated) help to help (DEPRECATED).
    • Parameters cannot be required nor prompted or an error is raised.
    • A warning will be printed when something deprecated is used.
  • Add a catch_exceptions parameter to CliRunner. If
    catch_exceptions is not passed to CliRunner.invoke, the value
    from CliRunner is used. :issue:2817 :pr:2818

  • Option.flag_value will no longer have a default value set based on
    Option.default if Option.is_flag is False. This results in
    Option.default not needing to implement __bool__. :pr:2829

  • Incorrect click.edit typing has been corrected. :pr:2804

  • Choice is now generic and supports any iterable value.
    This allows you to use enums and other non-str values. :pr:2796
    :issue:605

  • Fix setup of help option's defaults when using a custom class on its
    decorator. Removes HelpOption. :issue:2832 :pr:2840

coveragepy/coveragepy (coverage)

v7.13.0

Compare Source

  • Feature: coverage.py now supports :file:.coveragerc.toml configuration
    files. These files use TOML syntax and take priority over
    :file:pyproject.toml but lower priority than :file:.coveragerc files.
    Closes issue 1643_ thanks to Olena 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 work
    when 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, and coverage-3.10 (if installed for
    Python 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.0

Compare 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 the implementation <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 cause
    errors 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 would
    fail when trying to open source files, as described in issue 2091_. This
    is 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.3

Compare 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_ and issue 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_ to
    the coveragepy GitHub organization_. The default branch has changed from
    master 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.2

Compare Source

  • Fix: using the "sysmon" measurement core in 7.11.1, if Python code was
    claimed to come from a non-Python file, a NotPython exception could be
    raised. 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.1

Compare 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 in
    the 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 a
    slight performance improvement, but I couldn't reproduce the performance
    gain, so it's been reverted, fixing the debugger problem.

  • A new debug option --debug=core shows which core is in use and why.

  • Split sqlite debugging information out of the sys :ref:coverage debug <cmd_debug> and :ref:cmd_run_debug options since it's bulky and not
    very useful.

  • Updated the :ref:howitworks page to better describe the three different
    measurement cores.

.. _issue 1420: #​1420
.. _issue 2064: #​2064
.. _issue 2070: #​2070

.. _changes_7-11-0:

v7.11.0

Compare Source

  • Dropped support for Python 3.9, declared support for Python 3.15 alpha.

.. _changes_7-10-7:

v7.10.7

Compare 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.6

Compare Source

  • Fix: source directories were not properly communicated to subprocesses
    that ran in different directories, as reported in issue 1499_. This is now
    fixed.

  • Performance: Alex Gaynor continues fine-tuning <pull 2038_>_ the speed of
    combination, especially with many contexts.

.. _issue 1499: #​1499
.. _pull 2038: #​2038

.. _changes_7-10-5:

v7.10.5

Compare Source

  • Big speed improvements for coverage combine: it's now about twice as
    fast! Huge thanks to Alex Gaynor for pull requests 2032 <pull 2032_>,
    2033 <pull 2033_>
    , and 2034 <pull 2034_>_.

.. _pull 2032: #​2032
.. _pull 2033: #​2033
.. _pull 2034: #​2034

.. _changes_7-10-4:

v7.10.4

Compare Source

  • Added patch = fork for times when the built-in forking support is
    insufficient.

  • Fix: patch = execv also inherits the entire coverage configuration now.

.. _changes_7-10-3:

v7.10.3

Compare 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
      ModuleNotFound error 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 run command line (such as
      --branch) wouldn't be communicated to the subprocesses. This could
      lead to combining failures, as described in issue 2021_. Now the entire
      configuration is used in subprocesses, regardless of its origin.

    • Added debug=patch to 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.2

Compare Source

  • Fix: some code with NOP bytecodes could report missing branches that are
    actually executed. This is now fixed, closing issue 1999_. Python 3.9
    still shows the problem.

.. _issue 1999: #​1999

.. _changes_7-10-1:

v7.10.1

Compare Source

  • Fix: the exclusion for if TYPE_CHECKING: was wrong: it marked the branch
    as 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, closing
    issue 2006_.

.. _issue 2006: #​2006

.. _changes_7-10-0:

v7.10.0

Compare Source

  • A new configuration option: ":ref:config_run_patch" specifies named patches
    to work around some limitations in coverage measurement. These patches are
    available:

    • patch = _exit lets coverage save its data even when :func:os._exit() <python:os._exit> is used to abruptly end the process. This closes
      long-standing issue 310_ as well as its duplicates: issue 312, issue 1673, issue 1845, and issue 1941.

    • patch = subprocess measures coverage in Python subprocesses created
      with :mod:subprocess, :func:os.system, or one of the :func:execv <python:os.execl> or :func:spawnv <python:os.spawnl> family of
      functions. Closes old issue 367, its duplicate issue 378 and old
      issue 689_.

    • patch = execv adjusts the :func:execv <python:os.execl> family of
      functions to save coverage data before ending the current program and
      starting the next. Not available on Windows. Closes issue 43_ after 15
      years!

  • 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 automatically
    excluded as a line and if TYPE_CHECKING: is excluded as a branch. Closes
    issue 831_.

  • A new command-line option: --save-signal=USR1 specifies a signal that
    coverage.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 of
    regexes to add as pragmas for partial branches. This parallels the
    ":ref:config_report_exclude_also" setting for adding line exclusion
    patterns.

  • A few file path configuration settings didn't allow for tilde expansion:
    :ref:config_json_output, :ref:config_lcov_output and
    :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.2

Compare 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.1

Compare 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.0

Compare Source

  • Added a [run] core configuration 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, closing issue 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.2

Compare Source

  • Wheels are provided for Windows ARM64 on Python 3.11, 3.12, and 3.13.
    Thanks, Finn Womack <pull 1972_>_.

.. _issue 1971: #​1971
.. _pull 1972: #​1972

.. _changes_7-8-1:

v7.8.1

Compare 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.0

Compare Source

  • Added a new source_dirs setting for symmetry with the existing
    source_pkgs setting. It's preferable to the existing source setting,
    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_>. This
    works properly except for a detail when using the coverage command on
    Windows. There you can use python -m coverage instead if you need exact
    emulation.

.. _issue 1696: #​1696
.. _pull 1700: #​1700
.. _issue 1942: #​1942
.. _pull 1943: #​1943

.. _changes_7-7-1:

agronholm/exceptiongroup (exceptiongroup)

v1.3.1

Compare Source

  • Fixed AttributeError: 'TracebackException' object has no attribute 'exceptions' when formatting unpickled TBEs from another Python process which did not apply the exceptiongroup patches (#​144)

v1.3.0

Compare Source

  • Added **kwargs to function and method signatures as appropriate to match the signatures in the standard library
  • In line with the stdlib typings in typeshed, updated (Base)ExceptionGroup generic types to define defaults for their generic arguments (defaulting to BaseExceptionGroup[BaseException] and ExceptionGroup[Exception]) (PR by @​mikenerone)
  • Changed BaseExceptionGroup.__init__() to directly call BaseException.__init__() instead of the superclass __init__() in order to emulate the CPython behavior (broken or not) (PR by @​cfbolz)
  • Changed the exceptions attribute to always return the same tuple of exceptions, created from the original exceptions sequence passed to BaseExceptionGroup to match CPython behavior (#​143)
aio-libs/frozenlist (frozenlist)

v1.8.0

Compare Source

======

(2025-10-05)

Contributor-facing changes

  • The :file:reusable-cibuildwheel.yml workflow has been refactored to
    be more generic and :file:ci-cd.yml now holds all the configuration
    toggles -- by :user:webknjaz.

    Related issues and pull requests on GitHub:
    :issue:668.

  • When building wheels, the source distribution is now passed directly
    to the cibuildwheel invocation -- by :user:webknjaz.

    Related issues and pull requests on GitHub:
    :issue:669.

  • Builds and tests have been added to
    ci-cd.yml for 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=false from :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.0

Compare 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 frozenlist binary 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:

    1. Setting the FROZENLIST_CYTHON_TRACING environment variable
    2. Using the --config-setting=with-cython-tracing=true option with pip

    Related issues and pull requests on GitHub:
    :issue:660.

  • Enabled PIP_CONSTRAINT environment variable in the build configuration to ensure the pinned Cython version from requirements/cython.txt is used during wheel builds.

    Related issues and pull requests on GitHub:
    :issue:661.


v1.6.2

Compare Source

======

(2025-06-03)

No significant changes.


v1.6.1

Compare Source

======

(2025-06-02)

Bug fixes

  • Correctly use cimport for including PyBool_FromLong -- by :user:lysnikolaou.

    Related issues and pull requests on GitHub:
    :issue:653.

Packaging updates and notes for downstreams

  • Exclude _frozenlist.cpp from 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.0

Compare Source

======

(2025-04-17)

Bug fixes

  • Stopped implicitly allowing the use of Cython pre-release versions when
    building the distribution package -- by :user:ajsanchezsanz and
    :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:ajsanchezsanz and
    :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:webknjaz that takes into account ABI stability and the exact
    version 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.45

Compare Source

What's Changed


Configuration

📅 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.


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

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

@renovate renovate bot force-pushed the renovate/python-(non-major) branch 2 times, most recently from 184c072 to dc6c74c Compare May 26, 2024 12:38
@renovate renovate bot changed the title chore(deps): update dependency typing-extensions to v4.12.0 chore(deps): update python (non-major) May 26, 2024
@renovate renovate bot force-pushed the renovate/python-(non-major) branch 5 times, most recently from f9a2991 to 18c87fd Compare May 29, 2024 22:37
@renovate renovate bot changed the title chore(deps): update python (non-major) chore(deps): update python (non-major) - autoclosed May 30, 2024
@renovate renovate bot closed this May 30, 2024
@renovate renovate bot deleted the renovate/python-(non-major) branch May 30, 2024 19:29
@renovate renovate bot changed the title chore(deps): update python (non-major) - autoclosed chore(deps): update python (non-major) Jun 1, 2024
@renovate renovate bot reopened this Jun 1, 2024
@renovate renovate bot restored the renovate/python-(non-major) branch June 1, 2024 20:12
@renovate renovate bot changed the title chore(deps): update python (non-major) chore(deps): update dependency typing-extensions to v4.12.1 Jun 1, 2024
@renovate renovate bot force-pushed the renovate/python-(non-major) branch 2 times, most recently from 573c32c to 963eecb Compare June 2, 2024 04:34
@renovate renovate bot changed the title chore(deps): update dependency typing-extensions to v4.12.1 chore(deps): update python (non-major) Jun 2, 2024
@renovate renovate bot force-pushed the renovate/python-(non-major) branch 4 times, most recently from 18b557b to 1a7996a Compare June 7, 2024 22:17
@renovate renovate bot force-pushed the renovate/python-(non-major) branch 2 times, most recently from c84a7ca to caf1a69 Compare June 22, 2024 23:12
@renovate renovate bot force-pushed the renovate/python-(non-major) branch 5 times, most recently from bacfb27 to c6bb96b Compare July 1, 2024 17:18
@renovate renovate bot force-pushed the renovate/python-(non-major) branch from c6bb96b to 2f327a0 Compare July 4, 2024 01:53
@renovate renovate bot force-pushed the renovate/python-(non-major) branch 6 times, most recently from 22058e7 to 68dfec6 Compare October 6, 2025 18:00
@renovate renovate bot force-pushed the renovate/python-(non-major) branch 5 times, most recently from 298f6f7 to 03ade52 Compare October 14, 2025 05:34
@renovate renovate bot force-pushed the renovate/python-(non-major) branch from 03ade52 to d677314 Compare October 15, 2025 17:12
@renovate renovate bot force-pushed the renovate/python-(non-major) branch 2 times, most recently from 77d0b8b to df6fbef Compare October 31, 2025 00:41
@renovate renovate bot force-pushed the renovate/python-(non-major) branch 5 times, most recently from 0d26867 to d9c41ef Compare November 12, 2025 04:02
@renovate renovate bot force-pushed the renovate/python-(non-major) branch 3 times, most recently from cb4451f to 42a612a Compare November 22, 2025 01:33
@renovate renovate bot force-pushed the renovate/python-(non-major) branch from 42a612a to da5ed2d Compare November 28, 2025 17:44
@renovate renovate bot force-pushed the renovate/python-(non-major) branch 3 times, most recently from 4cc37f4 to 7276a12 Compare December 15, 2025 05:56
@renovate renovate bot force-pushed the renovate/python-(non-major) branch 2 times, most recently from 8fc92ce to b1ed64b Compare December 16, 2025 03:53
@renovate renovate bot force-pushed the renovate/python-(non-major) branch from b1ed64b to b36cfb2 Compare December 19, 2025 17:37
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