build(deps): bump pluggy from 1.6.0 to 1.7.0 in /dev (#4327) Bumps [pluggy](https://github.com/pytest-dev/pluggy) from 1.6.0 to 1.7.0. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pytest-dev/pluggy/blob/main/CHANGELOG.rst">pluggy's changelog</a>.</em></p> <blockquote> <h1>pluggy 1.7.0 (2026-10-14)</h1> <h2>Deprecations and Removals</h2> <ul> <li><code>[#632](https://github.com/pytest-dev/pluggy/issues/632) <https://github.com/pytest-dev/pluggy/issues/632></code>_: Hookspec methods defined without <code>self</code> as the first parameter now emit a :class:<code>DeprecationWarning</code>. Add <code>self</code> as the first parameter or use <code>@staticmethod</code>.</li> </ul> <h2>Features</h2> <ul> <li> <p><code>[#170](https://github.com/pytest-dev/pluggy/issues/170) <https://github.com/pytest-dev/pluggy/issues/170></code>_: Hookspecs can now declare default values for arguments, using the usual <code>def myhook(myarg="default")</code> syntax. This is mainly a backward compatibility feature, to allow a hookspec to add new parameters to an existing hook without breaking existing <em>callers</em>. See :ref:<code>hookspec_arg_default</code> for details.</p> </li> <li> <p><code>[#729](https://github.com/pytest-dev/pluggy/issues/729) <https://github.com/pytest-dev/pluggy/issues/729></code>_: Tracing now adds detail where <code>str()</code> is ambiguous: empty strings and strings containing whitespace are quoted, and enums and paths show their <code>repr()</code>.</p> <p>A value spanning several lines is now displayed as a block instead of running into the surrounding trace.</p> </li> </ul> <h2>Bug Fixes</h2> <ul> <li> <p><code>[#629](https://github.com/pytest-dev/pluggy/issues/629) <https://github.com/pytest-dev/pluggy/issues/629></code>_: Fix hooks failing to register on Python 3.14+ when type annotations use forward references.</p> </li> <li> <p><code>[#315](https://github.com/pytest-dev/pluggy/issues/315) <https://github.com/pytest-dev/pluggy/issues/315></code>_: Source archives created by <code>git archive</code> (including GitHub's "Source code" downloads) now carry version information, so building pluggy from them no longer fails with a missing version.</p> </li> <li> <p><code>[#442](https://github.com/pytest-dev/pluggy/issues/442) <https://github.com/pytest-dev/pluggy/issues/442></code>_: With the addition of default values for hookspec arguments, we also changed the precedence of default values for <em>hookimpl</em> arguments. Previously, if a hookimpl function declared a default for an argument, it was always used, even if the <em>hook call</em> passed an explicit value. Now the precedence is changed to: hook call passed value > hookspec default value > hookimpl default value. See :ref:<code>hookimpl_arg_defaults</code>.</p> </li> <li> <p><code>[#701](https://github.com/pytest-dev/pluggy/issues/701) <https://github.com/pytest-dev/pluggy/issues/701></code>_: Hookimpls and hookspecs are now discovered via :func:<code>inspect.getattr_static</code>, so properties, <code>cached_property</code> and other descriptors are no longer executed while scanning a plugin. Hooks declared through such a descriptor are not supported.</p> <p>As a side effect, <code>@hookimpl</code>/<code>@hookspec</code> applied <em>above</em> <code>@classmethod</code> or <code>@staticmethod</code> is now picked up; previously the marker sat on the wrapper where <code>getattr()</code> never saw it. Callables stored directly on a plugin instance -- in its <code>__dict__</code> or in a <code>__slots__</code> slot -- keep being called exactly as <code>getattr()</code> returned them, i.e. without an implicit <code>self</code>.</p> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pytest-dev/pluggy/commit/4c7f6365f2dde09c11e72db67d0f615231d64c19"><code>4c7f636</code></a> Preparing release 1.7.0</li> <li><a href="https://github.com/pytest-dev/pluggy/commit/21c7e1672941a0cd9e3c555bf5e5007f1fbe3dc5"><code>21c7e16</code></a> Merge pull request <a href="https://redirect.github.com/pytest-dev/pluggy/issues/787">#787</a> from pytest-dev/rm-outdated-doc</li> <li><a href="https://github.com/pytest-dev/pluggy/commit/628959b178ab075c0b9af833511e53b4f5640fcb"><code>628959b</code></a> docs: remove outdated hookimpl default args paragraph</li> <li><a href="https://github.com/pytest-dev/pluggy/commit/2edab5eb6d1d68d628e68b1aa0796d2388733446"><code>2edab5e</code></a> Merge pull request <a href="https://redirect.github.com/pytest-dev/pluggy/issues/752">#752</a> from bluetech/register-none-allow</li> <li><a href="https://github.com/pytest-dev/pluggy/commit/6995073de5ebc58d97dc017a7c2b7c5904f4c485"><code>6995073</code></a> Merge pull request <a href="https://redirect.github.com/pytest-dev/pluggy/issues/776">#776</a> from RonnyPfannschmidt/fix/uv-lock-pytest-downgrade</li> <li><a href="https://github.com/pytest-dev/pluggy/commit/50c1ac94b4a3e64d2b8e1a1868d3c580c95c7164"><code>50c1ac9</code></a> [pre-commit.ci] pre-commit autoupdate (<a href="https://redirect.github.com/pytest-dev/pluggy/issues/781">#781</a>)</li> <li><a href="https://github.com/pytest-dev/pluggy/commit/6a7e84e48cbeacdcb231a1e6dffc0bd6b6bd085e"><code>6a7e84e</code></a> Add changelog fragment for <a href="https://redirect.github.com/pytest-dev/pluggy/issues/776">#776</a></li> <li><a href="https://github.com/pytest-dev/pluggy/commit/d22cfb59c2a4c35af1335af338587d11a9a624ce"><code>d22cfb5</code></a> Drop tox from the dev dependency group</li> <li><a href="https://github.com/pytest-dev/pluggy/commit/74cbfa2b9a9ebf6098beb493ad1113efeb0e45e9"><code>74cbfa2</code></a> Relock pytest and tox that dependabot downgraded</li> <li><a href="https://github.com/pytest-dev/pluggy/commit/87f130aa18d8fdf9c92585e72423eca7f3de727d"><code>87f130a</code></a> Merge pull request <a href="https://redirect.github.com/pytest-dev/pluggy/issues/755">#755</a> from harbinresearcher/codex/entrypoint-plugin-presence</li> <li>Additional commits viewable in <a href="https://github.com/pytest-dev/pluggy/compare/1.6.0...1.7.0">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
diff --git a/dev/requirements.txt b/dev/requirements.txt index 79eb91a..6c3353b 100644 --- a/dev/requirements.txt +++ b/dev/requirements.txt
@@ -441,9 +441,9 @@ --hash=sha256:3ff6c5d8b43e8c37bb6e6dd5085658d658a7a0bdcd20b6a07b1fcfc1c4e9d632 \ --hash=sha256:76f8b485dcd3b1bb8166f1128d395fa3d87af26360c2358fb75b80019b957c6f # via rules-python-dev (pyproject.toml) -pluggy==1.6.0 \ - --hash=sha256:7dcc130b76258d33b90f61b658791dede3486c3e6bfb003ee5c9bfb396dd22f3 \ - --hash=sha256:e920276dd6813095e9377c0bc5566d94c932c33b27a3e3945d8389c374dd4746 +pluggy==1.7.0 \ + --hash=sha256:7dd7b0d8832ba3cb632c306926ded123429211b83641b35dc5c41ad2d34f9bec \ + --hash=sha256:d1eaa46ebb595891b860ab086b4d09c8588af65ebd4361b8e8f4bb8920b90ba8 # via pytest pyelftools==0.33 \ --hash=sha256:660d82dcbeb8e83d1702bd97f223f761625da06111c0cc988eac6b8ab0c1b61f \