Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Validate that a hookwrapper's function is a generator function during registration #282

Merged
merged 1 commit into from
Apr 2, 2021

Conversation

bluetech
Copy link
Member

Previously this error was only reported when calling the hook. Now it is reported during registration.

Suggested by @maxnikulin in #257 (comment).

@maxnikulin
Copy link
Contributor

Thank you.

There is test_hookwrapper_not_yield in testing/test_multicall.py that makes me surprised that some test configurations have passed.

@bluetech
Copy link
Member Author

This is because it is not registered.

We can perhaps move this check to the @hookimpl decorator itself but up to now all validations are performed during registration so I stuck to that.

@maxnikulin
Copy link
Contributor

I do not think that moving check to hookimpl will improve diagnostic. Vice versa it would be nice to get (in the compiler style) from a single run as mush errors as possible, namely if several hooks have problems, report all detected errors. Consider it as another idea, Of course, I do not expect so great changes in this pull request.

Copy link
Contributor

@goodboy goodboy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great idea 🍰

Copy link
Member

@RonnyPfannschmidt RonnyPfannschmidt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Im on mobile so i can't crosscheck, but does this break conditionally returning different generators from a function hookwrapper? (im fine with loosing that edge case i just want to classify the required version bump)

@bluetech
Copy link
Member Author

bluetech commented Jul 1, 2020

Good point @RonnyPfannschmidt, this will break it.

I had a look at pytest+corpus of plugins, tox and devpi and didn't find a case that would break by this, except one legitimately broken README example (which I'll send a PR to fix).

So overall I think the advantage outweigh the possible breakage from this, if any.

I enhanced to changelog entry to explain how to migrate (instead of returning a generator, yield from it).

@RonnyPfannschmidt
Copy link
Member

Im totally happy with the change, i just wanted to make sure we communicate it right and bump the version right

… registration

Previously this error was only reported when calling the hook. Now it is
reported during registration.
@bluetech
Copy link
Member Author

bluetech commented Apr 2, 2021

So seems like it's good to go for 1.0.0, so merging!

@bluetech bluetech merged commit ac351e0 into pytest-dev:master Apr 2, 2021
@bluetech bluetech deleted the hookwraper-gen-validate branch August 9, 2021 17:46
bors bot added a commit to ChrisRBe/PP-P2P-Parser that referenced this pull request Sep 8, 2021
369: build(deps): bump cfgv from 3.3.0 to 3.3.1 r=ChrisRBe a=dependabot[bot]

Bumps [cfgv](https://github.com/asottile/cfgv) from 3.3.0 to 3.3.1.
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/asottile/cfgv/commit/e53d655706e0ecd74c56fbbc072e2e4c12cc9dbd"><code>e53d655</code></a> v3.3.1</li>
<li><a href="https://github.com/asottile/cfgv/commit/0fa5252d3f0c9df7d04075b7ab6bc1fbcd2076ff"><code>0fa5252</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/asottile/cfgv/issues/62">#62</a> from asottile/asottile-patch-1</li>
<li><a href="https://github.com/asottile/cfgv/commit/5eabc69ef7b2d39ba1f04b2b9b8befecd24573d1"><code>5eabc69</code></a> reduce traceback nesting</li>
<li><a href="https://github.com/asottile/cfgv/commit/5fab2ab49401d559499d879cc949aa6e360f6e4d"><code>5fab2ab</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/asottile/cfgv/issues/61">#61</a> from asottile/pre-commit-ci-update-config</li>
<li><a href="https://github.com/asottile/cfgv/commit/d694a3843b5c349cadb3f592c9e79c1366b5dac8"><code>d694a38</code></a> [pre-commit.ci] pre-commit autoupdate</li>
<li><a href="https://github.com/asottile/cfgv/commit/7cbf98cfa897d4dbf20270e85fda8bbbac1959f3"><code>7cbf98c</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/asottile/cfgv/issues/60">#60</a> from asottile/pre-commit-ci-update-config</li>
<li><a href="https://github.com/asottile/cfgv/commit/f96dd2cba5f4f240c037e62a43683f1355b80273"><code>f96dd2c</code></a> [pre-commit.ci] pre-commit autoupdate</li>
<li><a href="https://github.com/asottile/cfgv/commit/421ea6e99d780e37c4e6037efe76c3addb483c5e"><code>421ea6e</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/asottile/cfgv/issues/59">#59</a> from asottile/pre-commit-ci-update-config</li>
<li><a href="https://github.com/asottile/cfgv/commit/9efeba1a46d68c882a0fee6fc1c108439d556e06"><code>9efeba1</code></a> [pre-commit.ci] pre-commit autoupdate</li>
<li><a href="https://github.com/asottile/cfgv/commit/7ff848dc827b8ccac6205c6a58752757e86a59b8"><code>7ff848d</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/asottile/cfgv/issues/58">#58</a> from asottile/pre-commit-ci-update-config</li>
<li>Additional commits viewable in <a href="https://github.com/asottile/cfgv/compare/v3.3.0...v3.3.1">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=cfgv&package-manager=pip&previous-version=3.3.0&new-version=3.3.1)](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` merge` will merge this PR after your CI passes on it
- ``@dependabot` squash and merge` will squash and merge this PR after your CI passes on it
- ``@dependabot` cancel merge` will cancel a previously requested merge and block automerging
- ``@dependabot` reopen` will reopen this PR if it is closed
- ``@dependabot` close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- ``@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>

370: build(deps): bump pluggy from 0.13.1 to 1.0.0 r=ChrisRBe a=dependabot[bot]

Bumps [pluggy](https://github.com/pytest-dev/pluggy) from 0.13.1 to 1.0.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.0.0 (2021-08-25)</h1>
<h2>Deprecations and Removals</h2>
<ul>
<li>
<p><code>[#116](pytest-dev/pluggy#116) &lt;https://github.com/pytest-dev/pluggy/issues/116&gt;</code>_: Remove deprecated <code>implprefix</code> support.
Decorate hook implementations using an instance of HookimplMarker instead.
The deprecation was announced in release <code>0.7.0</code>.</p>
</li>
<li>
<p><code>[#120](pytest-dev/pluggy#120) &lt;https://github.com/pytest-dev/pluggy/issues/120&gt;</code>_: Remove the deprecated <code>proc</code> argument to <code>call_historic</code>.
Use <code>result_callback</code> instead, which has the same behavior.
The deprecation was announced in release <code>0.7.0</code>.</p>
</li>
<li>
<p><code>[#265](pytest-dev/pluggy#265) &lt;https://github.com/pytest-dev/pluggy/issues/265&gt;</code>_: Remove the <code>_Result.result</code> property. Use <code>_Result.get_result()</code> instead.
Note that unlike <code>result</code>, <code>get_result()</code> raises the exception if the hook raised.
The deprecation was announced in release <code>0.6.0</code>.</p>
</li>
<li>
<p><code>[#267](pytest-dev/pluggy#267) &lt;https://github.com/pytest-dev/pluggy/issues/267&gt;</code>_: Remove official support for Python 3.4.</p>
</li>
<li>
<p><code>[#272](pytest-dev/pluggy#272) &lt;https://github.com/pytest-dev/pluggy/issues/272&gt;</code>_: Dropped support for Python 2.
Continue to use pluggy 0.13.x for Python 2 support.</p>
</li>
<li>
<p><code>[#308](pytest-dev/pluggy#308) &lt;https://github.com/pytest-dev/pluggy/issues/308&gt;</code>_: Remove official support for Python 3.5.</p>
</li>
<li>
<p><code>[#313](pytest-dev/pluggy#313) &lt;https://github.com/pytest-dev/pluggy/issues/313&gt;</code>_: The internal <code>pluggy.callers</code>, <code>pluggy.manager</code> and <code>pluggy.hooks</code> are now explicitly marked private by a <code>_</code> prefix (e.g. <code>pluggy._callers</code>).
Only API exported by the top-level <code>pluggy</code> module is considered public.</p>
</li>
<li>
<p><code>[#59](pytest-dev/pluggy#59) &lt;https://github.com/pytest-dev/pluggy/issues/59&gt;</code>_: Remove legacy <code>__multicall__</code> recursive hook calling system.
The deprecation was announced in release <code>0.5.0</code>.</p>
</li>
</ul>
<h2>Features</h2>
<ul>
<li>
<p><code>[#282](pytest-dev/pluggy#282) &lt;https://github.com/pytest-dev/pluggy/issues/282&gt;</code>_: When registering a hookimpl which is declared as <code>hookwrapper=True</code> but whose
function is not a generator function, a <code>PluggyValidationError</code> exception is
now raised.</p>
<p>Previously this problem would cause an error only later, when calling the hook.</p>
<p>In the unlikely case that you have a hookwrapper that <em>returns</em> a generator</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/4259fdd799d64f953631e47ddcb69c3074a15c13"><code>4259fdd</code></a> Fix CHANGELOG title manually</li>
<li><a href="https://github.com/pytest-dev/pluggy/commit/906abca9bb403729f4df44d02142698ddd54d5b5"><code>906abca</code></a> Preparing release 1.0.0</li>
<li><a href="https://github.com/pytest-dev/pluggy/commit/56eb23c89aa0a43fa7b139894fbf6142684c2969"><code>56eb23c</code></a> Rename HOWTORELEASE to RELEASING to follow pytest</li>
<li><a href="https://github.com/pytest-dev/pluggy/commit/fc6395ca27d5deb008db250da57a23dd40bc93a4"><code>fc6395c</code></a> Fix scripts/release.py to use main instead of master</li>
<li><a href="https://github.com/pytest-dev/pluggy/commit/e04816f71b3d40bc959550b93f1d69098fc045fd"><code>e04816f</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/pytest-dev/pluggy/issues/324">#324</a> from RonnyPfannschmidt/benchmarks</li>
<li><a href="https://github.com/pytest-dev/pluggy/commit/1424ab0a6a54a878b171c806a39c79d54817c531"><code>1424ab0</code></a> add micro benchmarks for hook calling playing with a the number of callers, w...</li>
<li><a href="https://github.com/pytest-dev/pluggy/commit/5e518648987a3afced3c2b014c73abab78f8306f"><code>5e51864</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/pytest-dev/pluggy/issues/323">#323</a> from RonnyPfannschmidt/switch-to-main</li>
<li><a href="https://github.com/pytest-dev/pluggy/commit/05c3bbd07c7186d3c124f1009aa6c8999ba70c2c"><code>05c3bbd</code></a> switch to main as primary branch</li>
<li><a href="https://github.com/pytest-dev/pluggy/commit/6b344fbebc598a623bb8db6b58f6f04b27916515"><code>6b344fb</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/pytest-dev/pluggy/issues/319">#319</a> from RonnyPfannschmidt/pre-commit-update</li>
<li><a href="https://github.com/pytest-dev/pluggy/commit/71f2d6b4a21381314f730dd5b5f93519882f79da"><code>71f2d6b</code></a> introduce pyupgrade and update black</li>
<li>Additional commits viewable in <a href="https://github.com/pytest-dev/pluggy/compare/0.13.1...1.0.0">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=pluggy&package-manager=pip&previous-version=0.13.1&new-version=1.0.0)](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` merge` will merge this PR after your CI passes on it
- ``@dependabot` squash and merge` will squash and merge this PR after your CI passes on it
- ``@dependabot` cancel merge` will cancel a previously requested merge and block automerging
- ``@dependabot` reopen` will reopen this PR if it is closed
- ``@dependabot` close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- ``@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>

373: build(deps): bump regex from 2021.8.3 to 2021.8.28 r=ChrisRBe a=dependabot[bot]

Bumps [regex](https://bitbucket.org/mrabarnett/mrab-regex) from 2021.8.3 to 2021.8.28.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://bitbucket.org/mrabarnett/mrab-regex/commits">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=regex&package-manager=pip&previous-version=2021.8.3&new-version=2021.8.28)](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` merge` will merge this PR after your CI passes on it
- ``@dependabot` squash and merge` will squash and merge this PR after your CI passes on it
- ``@dependabot` cancel merge` will cancel a previously requested merge and block automerging
- ``@dependabot` reopen` will reopen this PR if it is closed
- ``@dependabot` close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- ``@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>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
qujingpengf added a commit to qujingpengf/ChrisRBe that referenced this pull request Jan 22, 2022
369: build(deps): bump cfgv from 3.3.0 to 3.3.1 r=ChrisRBe a=dependabot[bot]

Bumps [cfgv](https://github.com/asottile/cfgv) from 3.3.0 to 3.3.1.
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/asottile/cfgv/commit/e53d655706e0ecd74c56fbbc072e2e4c12cc9dbd"><code>e53d655</code></a> v3.3.1</li>
<li><a href="https://github.com/asottile/cfgv/commit/0fa5252d3f0c9df7d04075b7ab6bc1fbcd2076ff"><code>0fa5252</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/asottile/cfgv/issues/62">#62</a> from asottile/asottile-patch-1</li>
<li><a href="https://github.com/asottile/cfgv/commit/5eabc69ef7b2d39ba1f04b2b9b8befecd24573d1"><code>5eabc69</code></a> reduce traceback nesting</li>
<li><a href="https://github.com/asottile/cfgv/commit/5fab2ab49401d559499d879cc949aa6e360f6e4d"><code>5fab2ab</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/asottile/cfgv/issues/61">#61</a> from asottile/pre-commit-ci-update-config</li>
<li><a href="https://github.com/asottile/cfgv/commit/d694a3843b5c349cadb3f592c9e79c1366b5dac8"><code>d694a38</code></a> [pre-commit.ci] pre-commit autoupdate</li>
<li><a href="https://github.com/asottile/cfgv/commit/7cbf98cfa897d4dbf20270e85fda8bbbac1959f3"><code>7cbf98c</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/asottile/cfgv/issues/60">#60</a> from asottile/pre-commit-ci-update-config</li>
<li><a href="https://github.com/asottile/cfgv/commit/f96dd2cba5f4f240c037e62a43683f1355b80273"><code>f96dd2c</code></a> [pre-commit.ci] pre-commit autoupdate</li>
<li><a href="https://github.com/asottile/cfgv/commit/421ea6e99d780e37c4e6037efe76c3addb483c5e"><code>421ea6e</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/asottile/cfgv/issues/59">#59</a> from asottile/pre-commit-ci-update-config</li>
<li><a href="https://github.com/asottile/cfgv/commit/9efeba1a46d68c882a0fee6fc1c108439d556e06"><code>9efeba1</code></a> [pre-commit.ci] pre-commit autoupdate</li>
<li><a href="https://github.com/asottile/cfgv/commit/7ff848dc827b8ccac6205c6a58752757e86a59b8"><code>7ff848d</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/asottile/cfgv/issues/58">#58</a> from asottile/pre-commit-ci-update-config</li>
<li>Additional commits viewable in <a href="https://github.com/asottile/cfgv/compare/v3.3.0...v3.3.1">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=cfgv&package-manager=pip&previous-version=3.3.0&new-version=3.3.1)](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` merge` will merge this PR after your CI passes on it
- ``@dependabot` squash and merge` will squash and merge this PR after your CI passes on it
- ``@dependabot` cancel merge` will cancel a previously requested merge and block automerging
- ``@dependabot` reopen` will reopen this PR if it is closed
- ``@dependabot` close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- ``@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>

370: build(deps): bump pluggy from 0.13.1 to 1.0.0 r=ChrisRBe a=dependabot[bot]

Bumps [pluggy](https://github.com/pytest-dev/pluggy) from 0.13.1 to 1.0.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.0.0 (2021-08-25)</h1>
<h2>Deprecations and Removals</h2>
<ul>
<li>
<p><code>[#116](pytest-dev/pluggy#116) &lt;https://github.com/pytest-dev/pluggy/issues/116&gt;</code>_: Remove deprecated <code>implprefix</code> support.
Decorate hook implementations using an instance of HookimplMarker instead.
The deprecation was announced in release <code>0.7.0</code>.</p>
</li>
<li>
<p><code>[#120](pytest-dev/pluggy#120) &lt;https://github.com/pytest-dev/pluggy/issues/120&gt;</code>_: Remove the deprecated <code>proc</code> argument to <code>call_historic</code>.
Use <code>result_callback</code> instead, which has the same behavior.
The deprecation was announced in release <code>0.7.0</code>.</p>
</li>
<li>
<p><code>[#265](pytest-dev/pluggy#265) &lt;https://github.com/pytest-dev/pluggy/issues/265&gt;</code>_: Remove the <code>_Result.result</code> property. Use <code>_Result.get_result()</code> instead.
Note that unlike <code>result</code>, <code>get_result()</code> raises the exception if the hook raised.
The deprecation was announced in release <code>0.6.0</code>.</p>
</li>
<li>
<p><code>[#267](pytest-dev/pluggy#267) &lt;https://github.com/pytest-dev/pluggy/issues/267&gt;</code>_: Remove official support for Python 3.4.</p>
</li>
<li>
<p><code>[#272](pytest-dev/pluggy#272) &lt;https://github.com/pytest-dev/pluggy/issues/272&gt;</code>_: Dropped support for Python 2.
Continue to use pluggy 0.13.x for Python 2 support.</p>
</li>
<li>
<p><code>[#308](pytest-dev/pluggy#308) &lt;https://github.com/pytest-dev/pluggy/issues/308&gt;</code>_: Remove official support for Python 3.5.</p>
</li>
<li>
<p><code>[#313](pytest-dev/pluggy#313) &lt;https://github.com/pytest-dev/pluggy/issues/313&gt;</code>_: The internal <code>pluggy.callers</code>, <code>pluggy.manager</code> and <code>pluggy.hooks</code> are now explicitly marked private by a <code>_</code> prefix (e.g. <code>pluggy._callers</code>).
Only API exported by the top-level <code>pluggy</code> module is considered public.</p>
</li>
<li>
<p><code>[#59](pytest-dev/pluggy#59) &lt;https://github.com/pytest-dev/pluggy/issues/59&gt;</code>_: Remove legacy <code>__multicall__</code> recursive hook calling system.
The deprecation was announced in release <code>0.5.0</code>.</p>
</li>
</ul>
<h2>Features</h2>
<ul>
<li>
<p><code>[#282](pytest-dev/pluggy#282) &lt;https://github.com/pytest-dev/pluggy/issues/282&gt;</code>_: When registering a hookimpl which is declared as <code>hookwrapper=True</code> but whose
function is not a generator function, a <code>PluggyValidationError</code> exception is
now raised.</p>
<p>Previously this problem would cause an error only later, when calling the hook.</p>
<p>In the unlikely case that you have a hookwrapper that <em>returns</em> a generator</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/4259fdd799d64f953631e47ddcb69c3074a15c13"><code>4259fdd</code></a> Fix CHANGELOG title manually</li>
<li><a href="https://github.com/pytest-dev/pluggy/commit/906abca9bb403729f4df44d02142698ddd54d5b5"><code>906abca</code></a> Preparing release 1.0.0</li>
<li><a href="https://github.com/pytest-dev/pluggy/commit/56eb23c89aa0a43fa7b139894fbf6142684c2969"><code>56eb23c</code></a> Rename HOWTORELEASE to RELEASING to follow pytest</li>
<li><a href="https://github.com/pytest-dev/pluggy/commit/fc6395ca27d5deb008db250da57a23dd40bc93a4"><code>fc6395c</code></a> Fix scripts/release.py to use main instead of master</li>
<li><a href="https://github.com/pytest-dev/pluggy/commit/e04816f71b3d40bc959550b93f1d69098fc045fd"><code>e04816f</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/pytest-dev/pluggy/issues/324">#324</a> from RonnyPfannschmidt/benchmarks</li>
<li><a href="https://github.com/pytest-dev/pluggy/commit/1424ab0a6a54a878b171c806a39c79d54817c531"><code>1424ab0</code></a> add micro benchmarks for hook calling playing with a the number of callers, w...</li>
<li><a href="https://github.com/pytest-dev/pluggy/commit/5e518648987a3afced3c2b014c73abab78f8306f"><code>5e51864</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/pytest-dev/pluggy/issues/323">#323</a> from RonnyPfannschmidt/switch-to-main</li>
<li><a href="https://github.com/pytest-dev/pluggy/commit/05c3bbd07c7186d3c124f1009aa6c8999ba70c2c"><code>05c3bbd</code></a> switch to main as primary branch</li>
<li><a href="https://github.com/pytest-dev/pluggy/commit/6b344fbebc598a623bb8db6b58f6f04b27916515"><code>6b344fb</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/pytest-dev/pluggy/issues/319">#319</a> from RonnyPfannschmidt/pre-commit-update</li>
<li><a href="https://github.com/pytest-dev/pluggy/commit/71f2d6b4a21381314f730dd5b5f93519882f79da"><code>71f2d6b</code></a> introduce pyupgrade and update black</li>
<li>Additional commits viewable in <a href="https://github.com/pytest-dev/pluggy/compare/0.13.1...1.0.0">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=pluggy&package-manager=pip&previous-version=0.13.1&new-version=1.0.0)](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` merge` will merge this PR after your CI passes on it
- ``@dependabot` squash and merge` will squash and merge this PR after your CI passes on it
- ``@dependabot` cancel merge` will cancel a previously requested merge and block automerging
- ``@dependabot` reopen` will reopen this PR if it is closed
- ``@dependabot` close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- ``@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>

373: build(deps): bump regex from 2021.8.3 to 2021.8.28 r=ChrisRBe a=dependabot[bot]

Bumps [regex](https://bitbucket.org/mrabarnett/mrab-regex) from 2021.8.3 to 2021.8.28.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://bitbucket.org/mrabarnett/mrab-regex/commits">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=regex&package-manager=pip&previous-version=2021.8.3&new-version=2021.8.28)](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` merge` will merge this PR after your CI passes on it
- ``@dependabot` squash and merge` will squash and merge this PR after your CI passes on it
- ``@dependabot` cancel merge` will cancel a previously requested merge and block automerging
- ``@dependabot` reopen` will reopen this PR if it is closed
- ``@dependabot` close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- ``@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>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
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.

None yet

4 participants