Skip to content

Bump the python-dependencies group across 1 directory with 11 updates - #23

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/pip/python-dependencies-acf4ae050d
Open

Bump the python-dependencies group across 1 directory with 11 updates#23
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/pip/python-dependencies-acf4ae050d

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 17, 2026

Copy link
Copy Markdown
Contributor

Bumps the python-dependencies group with 11 updates in the / directory:

Package From To
flit-core 3.12.0 4.0.2
astroid 4.1.2 4.3.0
certifi 2026.6.17 2026.7.22
charset-normalizer 3.4.9 3.5.0
coverage 7.15.2 7.15.4
flit 3.12.0 4.0.2
librt 0.13.0 0.15.0
packaging 26.2 26.3
platformdirs 4.10.1 4.11.3
pylint 4.0.6 4.0.7
ruff 0.15.22 0.16.3

Updates flit-core from 3.12.0 to 4.0.2

Changelog

Sourced from flit-core's changelog.

Version 4.0.2

  • Fix invalid metadata files with Import-Name (:ghissue:813).

Version 4.0.1

No changes, but a new tag to trigger an upload to PyPI now that twine will accept it.

Version 4.0

This version contains breaking changes, but most projects which are already using the [project] table for metadata shouldn't be affected, and can simply change the flit_core <4 constraint to <5.

  • The [tool.flit.metadata] table is no longer used for project metadata (:ghpull:771). Use the newer :ref:[project] table <pyproject_toml_project> instead (or if that is not possible, build with flit_core <4).
  • :ref:build_cmd and :ref:publish_cmd no longer include files in the sdist based on what is committed in git or Mercurial (:ghpull:772). These commands now build packages more like Flit does when called as a backend by e.g. python -m build. Specify :ref:sdist include & exclude patterns <pyproject_toml_sdist> instead (Flit can help to generate these), or pass the --use-vcs option to get the old behaviour back.
  • flit_core now requires Python 3.8 or above (:ghpull:738)
  • The --setup-py option to generate sdists containing a setup.py file is no longer available (:ghpull:776).
  • Making typing stubs packages with a -stubs suffix will now work (:ghpull:742).
  • The default glob patterns for license files have been extended to include NOTICE* and AUTHORS* (:ghpull:758).
  • license-files glob patterns can contain spaces (:ghpull:797).
  • Fix a bug where license files could be found twice on Windows (:ghpull:752).
  • The new Import-Name and Import-Namespace metadata fields (metadata 2.5) are now supported (:ghpull:774). In most cases no new input is required, as Flit will create this metadata automatically.
  • Fix creating RECORD files when file names include commas (:ghpull:744).
  • The --use-vcs option now correctly recognises git from inside a git worktree folder (:ghpull:799).
  • On Python 3.12 and above, flit build now uses the 'data' filter when extracting the just-created sdist prior to building a wheel (:ghpull:775). This restricts some special features of tar files, but sdists are unlikely to use these features, and they would probably break in other scenarios if you did.
  • The vendorised readme_renderer package was updated to version 44.0 (:ghpull:760).

... (truncated)

Commits
  • 60c0b3d Merge pull request #814 from pypa/i813
  • 58e7f41 Bump version: 4.0.1 → 4.0.2
  • 666e3c2 Fix METADATA format issue
  • 81ac51d Merge pull request #812 from pypa/prepare-4.0.1
  • 41bdff1 Add release note about 4.0.1
  • ff5bfad Bump version: 4.0.0 → 4.0.1
  • 8faf734 Bump actions/setup-python from 6 to 7 (#807)
  • ef7f319 Merge pull request #800 from pypa/prepare-4.0
  • 431fbaf Remind people in release notes to allow flit_core <5
  • 38297e7 Version number -> 4.0.0
  • Additional commits viewable in compare view

Updates astroid from 4.1.2 to 4.3.0

Release notes

Sourced from astroid's releases.

v4.3.0

What's New in astroid 4.3.0?

Release date: 2026-08-07

Version 4.2.0 was skipped: a v4.2.0 tag was created by mistake during an aborted release attempt, so the changes from the 4.2.0 betas are released as 4.3.0.

  • Fix a crash on a functional namedtuple whose field name changes under NFKC normalization, such as namedtuple("mu", ["µ"]). Python normalizes identifiers, so the parsed class stores the field under "μ" while the brain looked it up as written, raising KeyError on a definition that namedtuple itself accepts.

    Closes pylint-dev/pylint#8746

  • Fix inference of a method's first argument (self or cls) when the method's return value is stored on an unrelated object. This avoids inferring cls as the caller's class when indexing a tuple returned by a classmethod such as A.c()[0].

    Closes pylint-dev/pylint#11101

  • super() with no argument now resolves against the class of the object the method was called on, instead of the class the method is written in. One consequence is that a typing.Self return value survives a chain of super() calls.

    Closes #2852 Closes pylint-dev/pylint#10807

  • typing.overload stubs no longer shadow the implementation when a special method is looked up in the MRO.

    Closes #2448

  • Fix a crash when the field names of a functional Enum or namedtuple call are bytes, as in Enum("", b""). Such a definition is invalid, so inference now falls back to its default instead of raising TypeError.

    Closes #3189

  • Fix a crash when the body of a typing.NamedTuple subclass contains an assignment whose target is not a single name, such as cat.color = "black", basket[0] = "apple" or apple, banana = "red", "yellow". The names bound by unpacking are now copied to the inferred class as well.

    Closes #3190

  • Fix a crash when a binary operation involves a class whose metaclass is not a

... (truncated)

Changelog

Sourced from astroid's changelog.

=================== astroid's ChangeLog

The changes for astroid 4.3.0 and later are documented in doc/whatsnew/ using towncrier: add a news fragment in doc/whatsnew/fragments/ instead of editing this file.

Commits
  • a52596a Bump astroid to 4.3.0, update changelog
  • 3dfb6ca Rename the 4.2.0 changelog section to 4.3.0
  • 941430e Ignore typing.overload stubs in dunder lookup (#3150)
  • 1e71c7d Fix crash on a namedtuple field name that changes under NFKC normalization (#...
  • 3316637 Fix crash on a dataclass base that annotates init (#3206)
  • 8577346 Infer the value of a data descriptor as unknown
  • 8666418 Fix crash in has_known_bases() for a non-class metaclass
  • 5952c15 Fix crash on non-name assignment targets in typing.NamedTuple body
  • 331e9d9 Fix crash on bytes field names in functional Enum/namedtuple
  • a68e42c build(deps): bump CodSpeedHQ/action from 4.19.1 to 5.0.1 (#3194)
  • Additional commits viewable in compare view

Updates certifi from 2026.6.17 to 2026.7.22

Commits

Updates charset-normalizer from 3.4.9 to 3.5.0

Release notes

Sourced from charset-normalizer's releases.

Version 3.5.0

3.5.0 (2026-08-12)

Added

  • Explicit support for Python 3.15

Fixed

  • Comparing a CharsetMatch to a non-alias encoding strings (#773)
  • Return 0.0 CharsetMatch.multi_byte_usage for empty payloads instead of crashing (#774)
  • A file with both a charset declaration and BOM/SIG did not verify first the BOM/SIG charset.
  • iso2022* cases misdetected due to a flaw in our multibyte chunking logic.

Changed

  • Replaced the optional mypyc build with Cython extensions while retaining the pure Python fallback. The previous engine (mypyc) started to hit rough limit around the optimization of our noise/coherence detector while Cython allows us to steer the engine toward the right generated optimized sources. This change SHOULD not impact bundler (e.g. Pyinstaller) as the module are immediately discoverable (i.e. not hidden import like mypyc did). Moreover, a long wished distribution is the abi3 wheels, this will allow us to no longer rush each year when a new Python interpreter is released. We still distribute the interpreter specific wheels for faster performance.
  • Applied micro-optimization on several utils.
  • CharsetMatches no longer sort on each match insertion.

Misc

  • Removed an old performance optimization attempt in apy.py (success_fast_tracked+payload_result_cache).
Changelog

Sourced from charset-normalizer's changelog.

3.5.0 (2026-08-12)

Added

  • Explicit support for Python 3.15

Fixed

  • Comparing a CharsetMatch to a non-alias encoding strings (#773)
  • Return 0.0 CharsetMatch.multi_byte_usage for empty payloads instead of crashing (#774)
  • A file with both a charset declaration and BOM/SIG did not verify first the BOM/SIG charset.
  • iso2022* cases misdetected due to a flaw in our multibyte chunking logic.

Changed

  • Replaced the optional mypyc build with Cython extensions while retaining the pure Python fallback. The previous engine (mypyc) started to hit rough limit around the optimization of our noise/coherence detector while Cython allows us to steer the engine toward the right generated optimized sources. This change SHOULD not impact bundler (e.g. Pyinstaller) as the module are immediately discoverable (i.e. not hidden import like mypyc did). Moreover, a long wished distribution is the abi3 wheels, this will allow us to no longer rush each year when a new Python interpreter is released. We still distribute the interpreter specific wheels for faster performance.
  • Applied micro-optimization on several utils.
  • CharsetMatches no longer sort on each match insertion.

Misc

  • Removed an old performance optimization attempt in apy.py (success_fast_tracked+payload_result_cache).
Commits
  • 3325d87 Merge pull request #792 from jawah/update-cibuildwheel-action
  • 77203b1 chore: reformat noxfile.py
  • 8561c22 chore(deps): bump github/codeql-action/upload-sarif (#787)
  • 25248df chore(deps): bump actions/setup-python from 6.3.0 to 7.0.0 (#789)
  • 3eaaf3e chore: enable cp315t in ci
  • fbe9fc4 chore: update cibuildwheel for py315 by default
  • 5c7b82a chore: add emscripten classifier
  • 7d30c21 chore: skip pyodide tests cibw
  • 417d66f Merge pull request #791 from jawah/patch-1
  • 130afd5 chore: perf script initial warm with big5 dummy content
  • Additional commits viewable in compare view

Updates coverage from 7.15.2 to 7.15.4

Release notes

Sourced from coverage's releases.

7.15.4

Version 7.15.4 — 2026-08-06

  • Fix: in the HTML report, a source file name containing a double quote (legal on POSIX) wasn’t escaped where it’s dropped into the href of the index and prev/next links, so it could close the attribute early and inject markup. Page URLs are now escaped. Thanks, Rajath Mohare.
  • Fix: the LCOV report wrote file names and other fields into its line-oriented records without neutralizing control characters. A measured file whose name contained a newline (legal on POSIX) could forge extra records, inflating the coverage seen by tools that read the report. Control characters in a field are now replaced. Thanks, Rajath Mohare.
  • Wheels are now provided for Python 3.15.

➡️  PyPI page: coverage 7.15.4. :arrow_right:  To install: python3 -m pip install coverage==7.15.4

7.15.3

Version 7.15.3 — 2026-08-02

  • Fix: the sysmon core is incompatible with dynamic contexts. Previously, the combination would be prevented when read from the coverage.py configuration. But using the context API as pytest-cov does, contexts would be silently dropped. Now a warning is issued, thanks to Jisang Han. Closes issue 2200.
  • A performance improvement in the low-level line number bookkeeping when combining data files, thanks to Kevin Turcios.
  • Performance improvement in HTML reporting by reducing the number of times files have to be parsed, thanks to Kevin Turcios.

➡️  PyPI page: coverage 7.15.3. :arrow_right:  To install: python3 -m pip install coverage==7.15.3

Changelog

Sourced from coverage's changelog.

Version 7.15.4 — 2026-08-06

  • Fix: in the HTML report, a source file name containing a double quote (legal on POSIX) wasn't escaped where it's dropped into the href of the index and prev/next links, so it could close the attribute early and inject markup. Page URLs are now escaped. Thanks, Rajath Mohare <pull 2227_>_.

  • Fix: the LCOV report wrote file names and other fields into its line-oriented records without neutralizing control characters. A measured file whose name contained a newline (legal on POSIX) could forge extra records, inflating the coverage seen by tools that read the report. Control characters in a field are now replaced. Thanks, Rajath Mohare <pull 2226_>_.

  • Wheels are now provided for Python 3.15.

.. _pull 2226: coveragepy/coveragepy#2226 .. _pull 2227: coveragepy/coveragepy#2227

.. _changes_7-15-3:

Version 7.15.3 — 2026-08-02

  • Fix: the sysmon core is incompatible with dynamic contexts. Previously, the combination would be prevented when read from the coverage.py configuration. But using the context API as pytest-cov does, contexts would be silently dropped. Now a warning is issued, thanks to Jisang Han <pull 2234_>. Closes issue 2200.

  • A performance improvement in the low-level line number bookkeeping when combining data files, thanks to Kevin Turcios <pull 2239_>_.

  • Performance improvement in HTML reporting by reducing the number of times files have to be parsed, thanks to Kevin Turcios <pull 2240_>_.

.. _issue 2200: coveragepy/coveragepy#2200 .. _pull 2234: coveragepy/coveragepy#2234 .. _pull 2239: coveragepy/coveragepy#2239 .. _pull 2240: coveragepy/coveragepy#2240

.. _changes_7-15-2:

Commits
  • 4c0e7ff docs: sample HTML for 7.15.4
  • db4cc32 docs: prep for 7.15.4
  • c33085c style: start gradual move to ruff 0.16
  • 53a0fd5 fix: neutralize control characters in lcov report fields (#2226)
  • b64d53d build: make 3.15 wheels
  • 53792ab build: show the python version for kits
  • f6b03c7 chore: make upgrade_one package=cibuildwheel
  • d9b660a chore: make upgrade
  • b128a31 docs: oops, move this entry to the correct place
  • a7a2c15 fix: escape filename urls in html report href attributes (#2227)
  • Additional commits viewable in compare view

Updates flit from 3.12.0 to 4.0.2

Changelog

Sourced from flit's changelog.

Version 4.0.2

  • Fix invalid metadata files with Import-Name (:ghissue:813).

Version 4.0.1

No changes, but a new tag to trigger an upload to PyPI now that twine will accept it.

Version 4.0

This version contains breaking changes, but most projects which are already using the [project] table for metadata shouldn't be affected, and can simply change the flit_core <4 constraint to <5.

  • The [tool.flit.metadata] table is no longer used for project metadata (:ghpull:771). Use the newer :ref:[project] table <pyproject_toml_project> instead (or if that is not possible, build with flit_core <4).
  • :ref:build_cmd and :ref:publish_cmd no longer include files in the sdist based on what is committed in git or Mercurial (:ghpull:772). These commands now build packages more like Flit does when called as a backend by e.g. python -m build. Specify :ref:sdist include & exclude patterns <pyproject_toml_sdist> instead (Flit can help to generate these), or pass the --use-vcs option to get the old behaviour back.
  • flit_core now requires Python 3.8 or above (:ghpull:738)
  • The --setup-py option to generate sdists containing a setup.py file is no longer available (:ghpull:776).
  • Making typing stubs packages with a -stubs suffix will now work (:ghpull:742).
  • The default glob patterns for license files have been extended to include NOTICE* and AUTHORS* (:ghpull:758).
  • license-files glob patterns can contain spaces (:ghpull:797).
  • Fix a bug where license files could be found twice on Windows (:ghpull:752).
  • The new Import-Name and Import-Namespace metadata fields (metadata 2.5) are now supported (:ghpull:774). In most cases no new input is required, as Flit will create this metadata automatically.
  • Fix creating RECORD files when file names include commas (:ghpull:744).
  • The --use-vcs option now correctly recognises git from inside a git worktree folder (:ghpull:799).
  • On Python 3.12 and above, flit build now uses the 'data' filter when extracting the just-created sdist prior to building a wheel (:ghpull:775). This restricts some special features of tar files, but sdists are unlikely to use these features, and they would probably break in other scenarios if you did.
  • The vendorised readme_renderer package was updated to version 44.0 (:ghpull:760).

... (truncated)

Commits
  • 60c0b3d Merge pull request #814 from pypa/i813
  • 58e7f41 Bump version: 4.0.1 → 4.0.2
  • 666e3c2 Fix METADATA format issue
  • 81ac51d Merge pull request #812 from pypa/prepare-4.0.1
  • 41bdff1 Add release note about 4.0.1
  • ff5bfad Bump version: 4.0.0 → 4.0.1
  • 8faf734 Bump actions/setup-python from 6 to 7 (#807)
  • ef7f319 Merge pull request #800 from pypa/prepare-4.0
  • 431fbaf Remind people in release notes to allow flit_core <5
  • 38297e7 Version number -> 4.0.0
  • Additional commits viewable in compare view

Updates librt from 0.13.0 to 0.15.0

Commits

Updates packaging from 26.2 to 26.3

Release notes

Sourced from packaging's releases.

26.3

What's Changed

Features

  • Add a public VersionRange API and SpecifierSet.to_range(), representing the versions a specifier set accepts as an interval set that supports intersection, union, difference, complement, set relations, membership tests, and filtering. VersionRange.to_specifier_set() converts a range back to a SpecifierSet where a PEP 440 form exists. (#1267, #1270, #1298)
  • PEP 808: accept Metadata-Version: 2.6. (#1194)
  • Add a limit argument to parse_tag() for compressed tag sets. (#1220)
  • Add a prefer_sdist_predicate argument to Pylock.select() to prefer source distributions over wheels for selected packages. (#1334)
  • Add pure_python_tags() to generate the pure-Python tags for a Python version without touching the running platform. (#1346)
  • Add SpecifierSet.is_subset(), SpecifierSet.is_superset(), and SpecifierSet.is_disjoint(), which compare the versions two specifier sets accept. (#1313)

Behavior adaptations

  • Drop support for Python 3.8; packaging now requires Python 3.9 or later. (#1157)
  • Prefer native linux_* platform tags over manylinux and musllinux tags on Linux. (#160)

Fixes for versions and specifiers

  • Raise InvalidVersion instead of TypeError when Version is given a non-string. (#1319)
  • Raise InvalidVersion for non-string pre-release letters passed to Version.from_parts. (#1241)
  • Fix an AttributeError when hashing internally trimmed versions. (#1242)
  • Fix SpecifierSet.is_unsatisfiable for post-release boundary intersections. (#1257)

Fixes for requirements and markers

  • Make Requirement.__hash__ consistent with __eq__ for trailing-zero-equivalent specifiers (e.g. foo==1.0.0 and foo==1.0.0.0), so equal requirements hash equal and deduplicate in sets and dicts. (#1232)
  • Normalize requested extra names before comparing or hashing requirements. (#644)
  • Preserve a Requirement's specifier prereleases override across a pickle round trip. (#1204)
  • Raise InvalidRequirement instead of InvalidSpecifier when a requirement contains an invalid specifier. (#1332)
  • Clarify the error for post-release prefix wildcards like ==1.0.post1.*. (#1299)
  • Preserve quoting semantics when serializing marker values, so round-tripped markers parse back to the same marker. (#1213)
  • Keep the parentheses of a nested group when serializing markers. (#1316)
  • Normalize extra and dependency_groups values in nested markers at parse time. (#1246, #1310)
  • Raise UndefinedComparison when a set-valued variable like extras is used outside the membership form. (#1265)
  • Raise UndefinedEnvironmentName (a KeyError subclass) for missing environment keys during marker evaluation. (#1276)
  • Wrap malformed string literal errors in InvalidMarker / InvalidRequirement instead of leaking a low-level error. (#1249)
  • Reject requirements and markers with a trailing line break. (#1345)

Fixes for metadata and licenses

  • Collect all from_email validation errors into one ExceptionGroup instead of raising the first. (#1268)
  • Accept the UTF-8 charset case-insensitively in email payloads. (#1330)
  • Reject malformed Description-Content-Type values. (#1329)
  • Don't rewrite user values that contain {field} placeholders in error messages. (#1327)
  • Route multipart email payloads to unparsed instead of asserting. (#1247)
  • Make InvalidMetadata and CyclicDependencyGroup picklable. (#1328)
  • Fold every line boundary str.splitlines recognizes when writing a header with RFC822Message. (#1356)

... (truncated)

Changelog

Sourced from packaging's changelog.

26.3 - 2026-08-03


Features:
  • Add a public :class:~packaging.ranges.VersionRange API and
    :meth:SpecifierSet.to_range() &lt;packaging.specifiers.SpecifierSet.to_range&gt;,
    representing the versions a specifier set accepts as an interval set that
    supports intersection, union, difference, complement, set relations,
    membership tests, and filtering.
    :meth:~packaging.ranges.VersionRange.to_specifier_set converts a range back
    to a :class:~packaging.specifiers.SpecifierSet where a PEP 440 form exists.
    (:pull:1267, :pull:1270, :pull:1298)
  • PEP 808: accept Metadata-Version: 2.6. (:pull:1194)
  • Add a limit argument to parse_tag() for compressed tag sets.
    (:issue:1220)
  • Add a prefer_sdist_predicate argument to Pylock.select() to prefer
    source distributions over wheels for selected packages. (:pull:1334)
  • Add :func:~packaging.tags.pure_python_tags to generate the pure-Python
    tags for a Python version without touching the running platform.
    (:pull:1346)
  • Add :meth:SpecifierSet.is_subset() &lt;packaging.specifiers.SpecifierSet.is_subset&gt;, :meth:~packaging.specifiers.SpecifierSet.is_superset,
    and :meth:~packaging.specifiers.SpecifierSet.is_disjoint, which compare the
    versions two specifier sets accept. (:pull:1313)

Behavior adaptations:

  • Drop support for Python 3.8; packaging now requires Python 3.9 or later.
    (:pull:1157)
  • Prefer native linux_* platform tags over manylinux and musllinux
    tags on Linux. (:issue:160)

Fixes for versions and specifiers:

  • Raise InvalidVersion instead of TypeError when Version is given a
    non-string. (:pull:1319)
  • Raise InvalidVersion for non-string pre-release letters passed to
    Version.from_parts. (:pull:1241)
  • Fix an AttributeError when hashing internally trimmed versions.
    (:pull:1242)
  • Fix SpecifierSet.is_unsatisfiable for post-release boundary
    intersections. (:pull:1257)

Fixes for requirements and markers:

  • Make Requirement.__hash__ consistent with __eq__ for
    trailing-zero-equivalent specifiers (e.g. foo==1.0.0 and
    foo==1.0.0.0), so equal requirements hash equal and deduplicate in
    sets and dicts. (:pull:1232)
    </tr></table>

... (truncated)

Commits
  • 929fd4b Bump for release
  • f300ebf chore(deps): bump the pre-commit group with 5 updates (#1357)
  • f91d975 ci(downstream): bump hatchling to 1.31.0 and fix its pytest rootdir (#1361)
  • b1a7124 chore(deps): bump the github-actions group with 7 updates (#1358)
  • 2d873eb fix(metadata): fold every line boundary when writing headers (#1356)
  • 413d006 docs: changelog for 26.3 (#1343)
  • 4eb0753 docs(metadata): explain selective field validation (#1342)
  • 77e9ed4 feat(tags): add pure Python tag generator (#1346)
  • 7cea5e8 ci: drop 3.13t on Windows (3.13.14t may fail to build, run takes 9 minutes) (...
  • 45a8b34 docs: add missing versionadded/versionchanged directives (#1344)
  • Additional commits viewable in compare view

Updates platformdirs from 4.10.1 to 4.11.3

Release notes

Sourced from platformdirs's releases.

4.11.3

What's Changed

Full Changelog: tox-dev/platformdirs@4.11.2...4.11.3

4.11.2

What's Changed

Full Changelog: tox-dev/platformdirs@4.11.1...4.11.2

4.11.1

What's Changed

New Contributors

Full Changelog: tox-dev/platformdirs@4.11.0...4.11.1

4.11.0

What's Changed

Full Changelog: tox-dev/platformdirs@4.10.1...4.11.0

Changelog

Sourced from platformdirs's changelog.

########### Changelog ###########

.. towncrier-draft-entries:: Unreleased

.. towncrier release notes start


4.11.3 (2026-08-13)


  • python -m platformdirs now lists :func:~platformdirs.user_desktop_dir, which was missing from the properties it prints. :pr:523
  • Stop :func:~platformdirs.site_data_dir, :func:~platformdirs.site_config_dir and :func:~platformdirs.site_applications_dir raising IndexError on Unix and macOS when $XDG_DATA_DIRS or $XDG_CONFIG_DIRS holds only separators and whitespace, such as ":". These values now fall back to the platform defaults, and each entry is stripped of surrounding whitespace. :pr:523

4.11.2 (2026-08-10)


  • Stop :meth:~platformdirs.PlatformDirs.iter_cache_dirs, :meth:~platformdirs.PlatformDirs.iter_state_dirs, :meth:~platformdirs.PlatformDirs.iter_log_dirs and :meth:~platformdirs.PlatformDirs.iter_runtime_dirs yielding the same directory twice on Unix when use_site_for_root is active - :pr:469 fixed this for the config and data iterators only. On macOS, :meth:~platformdirs.PlatformDirs.iter_cache_dirs now yields the Homebrew and /Library/Caches entries separately rather than one os.pathsep-joined string when multipath is set. :pr:520

4.11.1 (2026-08-07)


  • Fix :func:~platformdirs.user_desktop_dir on Windows builds without ctypes. CSIDL_DESKTOPDIRECTORY appeared only in the ctypes lookup table, so the registry and environment variable resolvers raised ValueError for it. :pr:519

4.11.0 (2026-07-21)


  • Declare support for Python 3.15 and run the test suite against it, currently in beta. :pr:512

4.10.1 (2026-07-18)


  • Stop leaking memory on repeated Windows folder lookups. get_win_folder_via_ctypes defined a fresh ctypes structure on every call, and each one registered a pointer type that was never released; the resolver is now built

... (truncated)

Commits
  • 7f3960a Release 4.11.3
  • c8af984 fix: don't crash when an XDG dirs variable holds only separators (#523)
  • 6d2105a 📄 docs: publish llms.txt from the docs build (#522)
  • 7e4746c [pre-commit.ci] pre-commit autoupdate (#521)
  • a58fb90 Release 4.11.2
  • a01396c fix: stop the remaining iter_*_dirs yielding duplicate or joined paths (#520)
  • a9f2ba9 Release 4.11.1
  • 30a9549 Let the non-ctypes resolvers find the desktop folder (#519)
  • cc97359 build(deps): bump pypa/gh-action-pypi-publish from 1.14.1 to 1.14.2 in the al...
  • 328e15d [pre-commit.ci] pre-commit autoupdate (#517)
  • Additional commits viewable in compare view

Updates pylint from 4.0.6 to 4.0.7

Commits
  • c6768d3 Bump pylint to 4.0.7, update changelog (#11246)
  • e96ce2b Stop invalid-name from treating TypedDict instances as classes
  • 893294e [Backport maintenance/4.0.x] Fix crash in comparison-with-callable on a proxi...
  • 8cd74d4 Fix a crash on calls unpacking dicts with non-string keys
  • bc618ad Fix too-many-lines being reported at another module's pragma line
  • 3e1ee47 [Backport maintenance/4.0.x] Fix bad-string-format-type false positives for...
  • 7ca8116 [Backport maintenance/4.0.x] Fix useless-parent-delegation false positive o...
  • 14275a1 [Backport maintenance/4.0.x] Fix literal-comparison suggestion corrupting i...
  • a87eaa6 [Backport maintenance/4.0.x] Fix nested-min-max dropping arguments after th...
  • bdd017f [Backport maintenance/4.0.x] Fix too-many-locals counting PEP 695 type para...
  • Additional commits viewable in compare view

Updates ruff from 0.15.22 to 0.16.3

Release notes

Sourced from ruff's releases.

0.16.3

Release Notes

Released on 2026-08-13.

Preview features

  • [pylint] Fix false negatives on negative numbers (PLR6104) (#27251)
  • [pyupgrade] Add rule to replace while 1 with while True (UP048) (#27190)

Bug fixes

  • [flake8-bandit] Also check keyword arguments (S602, S603, S607, S609) (#27687)
  • [pylint] Allow continue in finally on Python 3.8 (#27626)
  • [pylint] Fix PLE1307 false positive with bools (#27651)
  • [pylint] Fix false positives and negatives with %b format character (PLE1300, PLE1307) (#27560)
  • [pylint] Improve handling of concatenated strings (PLE1300) (#27659)

Rule changes

  • [numpy] Make np.chararray autofix backwards-compatible (NPY201) (#27527)

Performance

  • Enable PGO for Linux x86-64 Ruff releases (#27570)
  • Enable PGO for Linux ARM64 Ruff releases (#27574)
  • Enable PGO for Windows x86-64 Ruff releases (#27573)
  • Enable PGO for macOS ARM64 Ruff releases (#27572)
  • Reduce Expr size to 64 bytes (#27591)

CLI

  • Hyperlink rule codes in ruff check --statistics output (#27646)

Documentation

  • [ruff] Also suggest asyncio.TaskGroup (RUF006) (#27461)

Other changes

Contributors

... (truncated)

Changelog

Sourced from ruff's changelog.

0.16.3

Released on 2026-08-13.

Preview features

  • [pylint] Fix false negatives on negative numbers (PLR6104) (#27251)
  • [pyupgrade] Add rule to replace while 1 with while True (UP048) (#27190)

Bug fixes

  • [flake8-bandit] Also check keyword arguments (S602, S603, S607, S609) (#27687)
  • [pylint] Allow continue in finally on Python 3.8 (#27626)
  • [pylint] Fix PLE1307 false positive with bools (#27651)
  • [pylint] Fix false positives and negatives with %b format character (PLE1300, PLE1307) (#27560)
  • [pylint] Improve handling of concatenated strings (PLE1300) (#27659)

Rule changes

  • [numpy] Make np.chararray autofix backwards-compatible (NPY201) (#27527)

Performance

  • Enable PGO for Linux x86-64 Ruff releases (#27570)
  • Enable PGO for Linux ARM64 Ruff releases (#27574)
  • Enable PGO for Windows x86-64 Ruff releases (#27573)
  • Enable PGO for macOS ARM64 Ruff releases (#27572)
  • Reduce Expr size to 64 bytes (#27591)

CLI

  • Hyperlink rule codes in ruff check --statistics output (#27646)

Documentation

  • [ruff] Also suggest asyncio.TaskGroup (RUF006) (#27461)

Other changes

Contributors

... (truncated)

Commits
  • b0e4702 Bump 0.16.3 (#27723)
  • ecdd401 [ty] Separate script and uv modules from project metadata (#27720)
  • 1263524 [ty] Simplify display implementations with std::fmt::from_fn (#27718)
  • 59196ba [ty] Unify polarity-aware relation construction (#27707)
  • b8c5e73 [ty] Disable CodSpeed cycle estimation for instrumented benchmarks (#27706)
  • 2b0d210 [ty] Centralize matched argument relations (

Bumps the python-dependencies group with 11 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [flit-core](https://github.com/pypa/flit) | `3.12.0` | `4.0.2` |
| [astroid](https://github.com/pylint-dev/astroid) | `4.1.2` | `4.3.0` |
| [certifi](https://github.com/certifi/python-certifi) | `2026.6.17` | `2026.7.22` |
| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.9` | `3.5.0` |
| [coverage](https://github.com/coveragepy/coveragepy) | `7.15.2` | `7.15.4` |
| [flit](https://github.com/pypa/flit) | `3.12.0` | `4.0.2` |
| [librt](https://github.com/mypyc/librt) | `0.13.0` | `0.15.0` |
| [packaging](https://github.com/pypa/packaging) | `26.2` | `26.3` |
| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.10.1` | `4.11.3` |
| [pylint](https://github.com/pylint-dev/pylint) | `4.0.6` | `4.0.7` |
| [ruff](https://github.com/astral-sh/ruff) | `0.15.22` | `0.16.3` |



Updates `flit-core` from 3.12.0 to 4.0.2
- [Changelog](https://github.com/pypa/flit/blob/main/doc/history.rst)
- [Commits](pypa/flit@3.12.0...4.0.2)

Updates `astroid` from 4.1.2 to 4.3.0
- [Release notes](https://github.com/pylint-dev/astroid/releases)
- [Changelog](https://github.com/pylint-dev/astroid/blob/main/ChangeLog)
- [Commits](pylint-dev/astroid@v4.1.2...v4.3.0)

Updates `certifi` from 2026.6.17 to 2026.7.22
- [Commits](certifi/python-certifi@2026.06.17...2026.07.22)

Updates `charset-normalizer` from 3.4.9 to 3.5.0
- [Release notes](https://github.com/jawah/charset_normalizer/releases)
- [Changelog](https://github.com/jawah/charset_normalizer/blob/master/CHANGELOG.md)
- [Commits](jawah/charset_normalizer@3.4.9...3.5.0)

Updates `coverage` from 7.15.2 to 7.15.4
- [Release notes](https://github.com/coveragepy/coveragepy/releases)
- [Changelog](https://github.com/coveragepy/coveragepy/blob/main/CHANGES.rst)
- [Commits](coveragepy/coveragepy@7.15.2...7.15.4)

Updates `flit` from 3.12.0 to 4.0.2
- [Changelog](https://github.com/pypa/flit/blob/main/doc/history.rst)
- [Commits](pypa/flit@3.12.0...4.0.2)

Updates `librt` from 0.13.0 to 0.15.0
- [Commits](mypyc/librt@v0.13.0...v0.15.0)

Updates `packaging` from 26.2 to 26.3
- [Release notes](https://github.com/pypa/packaging/releases)
- [Changelog](https://github.com/pypa/packaging/blob/main/CHANGELOG.rst)
- [Commits](pypa/packaging@26.2...26.3)

Updates `platformdirs` from 4.10.1 to 4.11.3
- [Release notes](https://github.com/tox-dev/platformdirs/releases)
- [Changelog](https://github.com/tox-dev/platformdirs/blob/main/docs/changelog.rst)
- [Commits](tox-dev/platformdirs@4.10.1...4.11.3)

Updates `pylint` from 4.0.6 to 4.0.7
- [Release notes](https://github.com/pylint-dev/pylint/releases)
- [Commits](pylint-dev/pylint@v4.0.6...v4.0.7)

Updates `ruff` from 0.15.22 to 0.16.3
- [Release notes](https://github.com/astral-sh/ruff/releases)
- [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md)
- [Commits](astral-sh/ruff@0.15.22...0.16.3)

---
updated-dependencies:
- dependency-name: flit-core
  dependency-version: 4.0.2
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: python-dependencies
- dependency-name: astroid
  dependency-version: 4.3.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: python-dependencies
- dependency-name: certifi
  dependency-version: 2026.7.22
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: python-dependencies
- dependency-name: charset-normalizer
  dependency-version: 3.5.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: python-dependencies
- dependency-name: coverage
  dependency-version: 7.15.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: python-dependencies
- dependency-name: flit
  dependency-version: 4.0.2
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: python-dependencies
- dependency-name: librt
  dependency-version: 0.15.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: python-dependencies
- dependency-name: packaging
  dependency-version: '26.3'
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: python-dependencies
- dependency-name: platformdirs
  dependency-version: 4.11.3
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: python-dependencies
- dependency-name: pylint
  dependency-version: 4.0.7
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: python-dependencies
- dependency-name: ruff
  dependency-version: 0.16.3
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: python-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python Pull requests that update python code labels Aug 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file python Pull requests that update python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants