Skip to content

Conversation

mgorny
Copy link
Contributor

@mgorny mgorny commented Dec 15, 2023

Support testing without the C extension if SETUPPY_FORCE_PURE is set. This makes the test suite behavior consistent with setup.py behavior.

Support testing without the C extension if SETUPPY_FORCE_PURE is set.
This makes the test suite behavior consistent with setup.py behavior.
@mgorny
Copy link
Contributor Author

mgorny commented Apr 17, 2025

Ping.

@ionelmc
Copy link
Owner

ionelmc commented Apr 17, 2025

@mgorny Ooops I missed this. Why do I need this? AFAIK there's no place where I set SETUPPY_FORCE_PURE for tests.

@mgorny
Copy link
Contributor Author

mgorny commented Apr 17, 2025

Downstreams use SETUPPY_FORCE_PURE to build pure Python version of the package, and then the test suite fails.

@ionelmc
Copy link
Owner

ionelmc commented Apr 17, 2025

I just want to understand why anyone would repackage this as pure-python in a downstream. Which distros? Some details?

@mgorny
Copy link
Contributor Author

mgorny commented Apr 17, 2025

Gentoo. We give our users an option to disable all C extensions, if they wish. However, in my case the primary use is comparing behavior of the same module on PyPy (where there is no C extension ever) and CPython. By building the package on CPython without the extension modules, I have fewer differences to be concerned about, and therefore it is easier to determine whether the particular problem is specific to PyPy or perhaps to the use of pure Python code paths.

@ionelmc ionelmc merged commit 58a13f3 into ionelmc:master Apr 17, 2025
@mgorny
Copy link
Contributor Author

mgorny commented Apr 18, 2025

Thank you!

@mgorny mgorny deleted the pure-test branch April 18, 2025 02:24
shaldengeki added a commit to shaldengeki/monorepo that referenced this pull request Aug 27, 2025
Bumps the pip group with 6 updates:

| Package | From | To |
| --- | --- | --- |
| [boto3](https://github.com/boto/boto3) | `1.40.11` | `1.40.16` |
| [boto3-stubs](https://github.com/youtype/mypy_boto3_builder) |
`1.40.11` | `1.40.16` |
| [flask](https://github.com/pallets/flask) | `3.1.1` | `3.1.2` |
|
[lazy-object-proxy](https://github.com/ionelmc/python-lazy-object-proxy)
| `1.11.0` | `1.12.0` |
| [requests](https://github.com/psf/requests) | `2.32.4` | `2.32.5` |
| [botocore](https://github.com/boto/botocore) | `1.40.11` | `1.40.16` |

Updates `boto3` from 1.40.11 to 1.40.16
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/boto/boto3/commit/fe7457e86d52e19c71e3196d3073fe1ab1a1ee27"><code>fe7457e</code></a>
Merge branch 'release-1.40.16'</li>
<li><a
href="https://github.com/boto/boto3/commit/393025907df9c9d28da5b1fdc260e349ce253117"><code>3930259</code></a>
Bumping version to 1.40.16</li>
<li><a
href="https://github.com/boto/boto3/commit/0954e8f28f228ca4fe463e636eb1f15a8f964498"><code>0954e8f</code></a>
Add changelog entries from botocore</li>
<li><a
href="https://github.com/boto/boto3/commit/8836e3333947dd90b52f10a4f05ec5bb7f4bb9e0"><code>8836e33</code></a>
Merge branch 'release-1.40.15'</li>
<li><a
href="https://github.com/boto/boto3/commit/e1dfc5f234c892770f40fc7d73ae7333ba11f4fb"><code>e1dfc5f</code></a>
Merge branch 'release-1.40.15' into develop</li>
<li><a
href="https://github.com/boto/boto3/commit/14dbc58bdfdec9bfb37fb8f27ca084fa7c17c0cd"><code>14dbc58</code></a>
Bumping version to 1.40.15</li>
<li><a
href="https://github.com/boto/boto3/commit/679ec9af44e67d6747883f37541427be8854fa94"><code>679ec9a</code></a>
Add changelog entries from botocore</li>
<li><a
href="https://github.com/boto/boto3/commit/9e5b34a20b18c3fa2439ea690b63ed57190ab4c1"><code>9e5b34a</code></a>
Merge branch 'release-1.40.14'</li>
<li><a
href="https://github.com/boto/boto3/commit/e4939704424850e05ebe63091cfa9b6544877f8b"><code>e493970</code></a>
Merge branch 'release-1.40.14' into develop</li>
<li><a
href="https://github.com/boto/boto3/commit/07e80dd737178be5be0cbdc9225112df4fa7138e"><code>07e80dd</code></a>
Bumping version to 1.40.14</li>
<li>Additional commits viewable in <a
href="https://github.com/boto/boto3/compare/1.40.11...1.40.16">compare
view</a></li>
</ul>
</details>
<br />

Updates `boto3-stubs` from 1.40.11 to 1.40.16
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/youtype/mypy_boto3_builder/releases">boto3-stubs's
releases</a>.</em></p>
<blockquote>
<h2>8.8.0 - Python 3.8 runtime is back</h2>
<h3>Changed</h3>
<ul>
<li><code>[services]</code> <code>install_requires</code> section is
calculated based on dependencies in use, so
<code>typing-extensions</code> version is set properly</li>
<li><code>[all]</code> Replaced <code>typing</code> imports with
<code>collections.abc</code> with a fallback to <code>typing</code> for
Python &lt;3.9</li>
<li><code>[all]</code> Added aliases for <code>builtins.list</code>,
<code>builtins.set</code>, <code>builtins.dict</code>, and
<code>builtins.type</code>, so Python 3.8 runtime should work as
expected again (reported by <a
href="https://github.com/YHallouard"><code>@​YHallouard</code></a> in <a
href="https://redirect.github.com/youtype/mypy_boto3_builder/issues/340">#340</a>
and <a
href="https://github.com/Omri-Ben-Yair"><code>@​Omri-Ben-Yair</code></a>
in <a
href="https://redirect.github.com/youtype/mypy_boto3_builder/issues/336">#336</a>)</li>
<li><code>[all]</code> Unions use the same type annotations as the rest
of the structures due to proper fallbacks</li>
</ul>
<h3>Fixed</h3>
<ul>
<li><code>[services]</code> Universal input/output shapes were not
replaced properly in service subresources</li>
<li><code>[docs]</code> Simplified doc links rendering for services</li>
<li><code>[services]</code> Cleaned up unnecessary imports in
<code>client.pyi</code></li>
<li><code>[builder]</code> Import records with fallback are always
rendered</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/youtype/mypy_boto3_builder/commits">compare
view</a></li>
</ul>
</details>
<br />

Updates `flask` from 3.1.1 to 3.1.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/pallets/flask/releases">flask's
releases</a>.</em></p>
<blockquote>
<h2>3.1.2</h2>
<p>This is the Flask 3.1.2 fix release, which fixes bugs but does not
otherwise change behavior and should not result in breaking changes
compared to the latest feature release.</p>
<p>PyPI: <a
href="https://pypi.org/project/Flask/3.1.2/">https://pypi.org/project/Flask/3.1.2/</a>
Changes: <a
href="https://flask.palletsprojects.com/page/changes/#version-3-1-2">https://flask.palletsprojects.com/page/changes/#version-3-1-2</a>
Milestone: <a
href="https://github.com/pallets/flask/milestone/38?closed=1">https://github.com/pallets/flask/milestone/38?closed=1</a></p>
<ul>
<li><code>stream_with_context</code> does not fail inside async views.
<a
href="https://redirect.github.com/pallets/flask/issues/5774">#5774</a></li>
<li>When using <code>follow_redirects</code> in the test client, the
final state of <code>session</code> is correct. <a
href="https://redirect.github.com/pallets/flask/issues/5786">#5786</a></li>
<li>Relax type hint for passing bytes IO to <code>send_file</code>. <a
href="https://redirect.github.com/pallets/flask/issues/5776">#5776</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/pallets/flask/blob/main/CHANGES.rst">flask's
changelog</a>.</em></p>
<blockquote>
<h2>Version 3.1.2</h2>
<p>Released 2025-08-19</p>
<ul>
<li><code>stream_with_context</code> does not fail inside async views.
:issue:<code>5774</code></li>
<li>When using <code>follow_redirects</code> in the test client, the
final state
of <code>session</code> is correct. :issue:<code>5786</code></li>
<li>Relax type hint for passing bytes IO to <code>send_file</code>.
:issue:<code>5776</code></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/pallets/flask/commit/2c1b30d0503cfb064f1cb252e6614a06915a362a"><code>2c1b30d</code></a>
release version 3.1.2</li>
<li><a
href="https://github.com/pallets/flask/commit/1292419ddfc6a14fc7f85b5ed7efcc2d215f1ad3"><code>1292419</code></a>
Update GitHub Actions workflow for artifact handling (<a
href="https://redirect.github.com/pallets/flask/issues/5795">#5795</a>)</li>
<li><a
href="https://github.com/pallets/flask/commit/4dd52ca9c768c9b6d04180f0547d6f4b6e34f211"><code>4dd52ca</code></a>
Update GitHub Actions workflow for artifact handling</li>
<li><a
href="https://github.com/pallets/flask/commit/55c62556571ee46a94da174643b50ece06edead4"><code>55c6255</code></a>
update dev dependencies</li>
<li><a
href="https://github.com/pallets/flask/commit/d8259eb11900285af9b80b0fa47f841174c054e3"><code>d8259eb</code></a>
use Jinja name consistently</li>
<li><a
href="https://github.com/pallets/flask/commit/38b4c1e19b50494cfcdc9332899e09b7fed34979"><code>38b4c1e</code></a>
refactor stream_with_context for async views (<a
href="https://redirect.github.com/pallets/flask/issues/5799">#5799</a>)</li>
<li><a
href="https://github.com/pallets/flask/commit/9822a0351574790cb66c652fcc396ad7aa2b09d8"><code>9822a03</code></a>
refactor stream_with_context for async views</li>
<li><a
href="https://github.com/pallets/flask/commit/49b7e7bc8fb69d605719991d1c0a99fcee689053"><code>49b7e7b</code></a>
security docs for TRUSTED_HOSTS (<a
href="https://redirect.github.com/pallets/flask/issues/5798">#5798</a>)</li>
<li><a
href="https://github.com/pallets/flask/commit/b228ca3d87745b746d904a2108429617a814ffda"><code>b228ca3</code></a>
security docs for TRUSTED_HOSTS</li>
<li><a
href="https://github.com/pallets/flask/commit/ff64079a516c269f171ababf3d92b86886a62ffd"><code>ff64079</code></a>
update flask-talisman link</li>
<li>Additional commits viewable in <a
href="https://github.com/pallets/flask/compare/3.1.1...3.1.2">compare
view</a></li>
</ul>
</details>
<br />

Updates `lazy-object-proxy` from 1.11.0 to 1.12.0
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/ionelmc/python-lazy-object-proxy/blob/master/CHANGELOG.rst">lazy-object-proxy's
changelog</a>.</em></p>
<blockquote>
<h2>1.12.0 (2025-08-22)</h2>
<ul>
<li>Fixed testing issues when C extensions are not desired.
Contributed by Michał Górny in
<code>[#79](ionelmc/python-lazy-object-proxy#79)
&lt;https://github.com/ionelmc/python-lazy-object-proxy/pull/79&gt;</code>_.</li>
<li>Added support for GraalPy.
Contributed by Michael Šimáček in
<code>[#87](ionelmc/python-lazy-object-proxy#87)
&lt;https://github.com/ionelmc/python-lazy-object-proxy/pull/87&gt;</code>_.</li>
<li>Fixed testing issues on Python 3.14.
Contributed by Michał Górny in
<code>[#88](ionelmc/python-lazy-object-proxy#88)
&lt;https://github.com/ionelmc/python-lazy-object-proxy/pull/88&gt;</code>_.</li>
<li>Modernized packaging to have metadata in
<code>pyproject.toml</code>.</li>
<li>Added Python 3.14 wheels.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/ionelmc/python-lazy-object-proxy/commit/1b694980d50cd483a2d5159ac7f4d63c894ec630"><code>1b69498</code></a>
Bump version: 1.11.0 → 1.12.0</li>
<li><a
href="https://github.com/ionelmc/python-lazy-object-proxy/commit/bea77620523cf1d7684d69efc55809041120f8ec"><code>bea7762</code></a>
Update changelog.</li>
<li><a
href="https://github.com/ionelmc/python-lazy-object-proxy/commit/9faf21f5a9ef3d317d746e42b21aabd817597ebe"><code>9faf21f</code></a>
Just include all the readme for now.</li>
<li><a
href="https://github.com/ionelmc/python-lazy-object-proxy/commit/93f108ee5e43b7c118954948d8be0a57e9a80f92"><code>93f108e</code></a>
Add some constraints in here too (hopefully pyproject license parsing
issues ...</li>
<li><a
href="https://github.com/ionelmc/python-lazy-object-proxy/commit/c6f1e42498835ac853286c1b7961f0153f37eb8a"><code>c6f1e42</code></a>
Fix action.</li>
<li><a
href="https://github.com/ionelmc/python-lazy-object-proxy/commit/79c9023c0a9712da9e848518849fdbe5a2d202e3"><code>79c9023</code></a>
Bump CI deps.</li>
<li><a
href="https://github.com/ionelmc/python-lazy-object-proxy/commit/7a12e795fdd6cad9e5d7afb7fa009b5521d9d844"><code>7a12e79</code></a>
Remove cover envs for mostly PITA platforms.</li>
<li><a
href="https://github.com/ionelmc/python-lazy-object-proxy/commit/0582c4147e24f070ea26a89108a6181ce1918268"><code>0582c41</code></a>
Require build deps in env (to allow building inplace ext properly).</li>
<li><a
href="https://github.com/ionelmc/python-lazy-object-proxy/commit/b53add7a0f0dd38c9751a77bc4276d8d000c7946"><code>b53add7</code></a>
Try require newer setuptools.</li>
<li><a
href="https://github.com/ionelmc/python-lazy-object-proxy/commit/ec64b9e15bba075185890afd45dbccc7d7bc7f42"><code>ec64b9e</code></a>
Let tox figure out graal bin.</li>
<li>Additional commits viewable in <a
href="https://github.com/ionelmc/python-lazy-object-proxy/compare/v1.11.0...v1.12.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `requests` from 2.32.4 to 2.32.5
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/psf/requests/releases">requests's
releases</a>.</em></p>
<blockquote>
<h2>v2.32.5</h2>
<h2>2.32.5 (2025-08-18)</h2>
<p><strong>Bugfixes</strong></p>
<ul>
<li>The SSLContext caching feature originally introduced in 2.32.0 has
created
a new class of issues in Requests that have had negative impact across a
number
of use cases. The Requests team has decided to revert this feature as
long term
maintenance of it is proving to be unsustainable in its current
iteration.</li>
</ul>
<p><strong>Deprecations</strong></p>
<ul>
<li>Added support for Python 3.14.</li>
<li>Dropped support for Python 3.8 following its end of support.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/psf/requests/blob/main/HISTORY.md">requests's
changelog</a>.</em></p>
<blockquote>
<h2>2.32.5 (2025-08-18)</h2>
<p><strong>Bugfixes</strong></p>
<ul>
<li>The SSLContext caching feature originally introduced in 2.32.0 has
created
a new class of issues in Requests that have had negative impact across a
number
of use cases. The Requests team has decided to revert this feature as
long term
maintenance of it is proving to be unsustainable in its current
iteration.</li>
</ul>
<p><strong>Deprecations</strong></p>
<ul>
<li>Added support for Python 3.14.</li>
<li>Dropped support for Python 3.8 following its end of support.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/psf/requests/commit/b25c87d7cb8d6a18a37fa12442b5f883f9e41741"><code>b25c87d</code></a>
v2.32.5</li>
<li><a
href="https://github.com/psf/requests/commit/131e506079d97606e4214cc4d87b780ac478de7a"><code>131e506</code></a>
Merge pull request <a
href="https://redirect.github.com/psf/requests/issues/7010">#7010</a>
from psf/dependabot/github_actions/actions/checkout-...</li>
<li><a
href="https://github.com/psf/requests/commit/b336cb2bc616a63a93c6470c558fc1f576b77f90"><code>b336cb2</code></a>
Bump actions/checkout from 4.2.0 to 5.0.0</li>
<li><a
href="https://github.com/psf/requests/commit/46e939b5525d9c72b677340985582b04b128478a"><code>46e939b</code></a>
Update publish workflow to use <code>artifact-id</code> instead of
<code>name</code></li>
<li><a
href="https://github.com/psf/requests/commit/4b9c546aa3f35fca6ca24945376fe7462bb007c4"><code>4b9c546</code></a>
Merge pull request <a
href="https://redirect.github.com/psf/requests/issues/6999">#6999</a>
from psf/dependabot/github_actions/step-security/har...</li>
<li><a
href="https://github.com/psf/requests/commit/7618dbef01d333f23ba4b9c4d97397b06dd89cb6"><code>7618dbe</code></a>
Bump step-security/harden-runner from 2.12.0 to 2.13.0</li>
<li><a
href="https://github.com/psf/requests/commit/2edca11103c1c27dd8b572dab544b7f48cf3b446"><code>2edca11</code></a>
Add support for Python 3.14 and drop support for Python 3.8 (<a
href="https://redirect.github.com/psf/requests/issues/6993">#6993</a>)</li>
<li><a
href="https://github.com/psf/requests/commit/fec96cd5976ad763e45bac9a033d62cca1877a00"><code>fec96cd</code></a>
Update Makefile rules (<a
href="https://redirect.github.com/psf/requests/issues/6996">#6996</a>)</li>
<li><a
href="https://github.com/psf/requests/commit/d58d8aa2f45c3575268d6d5250745ef69f9cf8b7"><code>d58d8aa</code></a>
docs: clarify timeout parameter uses seconds in Session.request (<a
href="https://redirect.github.com/psf/requests/issues/6994">#6994</a>)</li>
<li><a
href="https://github.com/psf/requests/commit/91a3eabd3dcc4d7f36dd8249e4777a90ef9b4305"><code>91a3eab</code></a>
Bump github/codeql-action from 3.28.5 to 3.29.0</li>
<li>Additional commits viewable in <a
href="https://github.com/psf/requests/compare/v2.32.4...v2.32.5">compare
view</a></li>
</ul>
</details>
<br />

Updates `botocore` from 1.40.11 to 1.40.16
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/boto/botocore/commit/56a479a3656697e1dfc00e83cfd77631dee5fe8e"><code>56a479a</code></a>
Merge branch 'release-1.40.16'</li>
<li><a
href="https://github.com/boto/botocore/commit/7aa26bb438c4d50953e701b7d25cc6b63015051b"><code>7aa26bb</code></a>
Bumping version to 1.40.16</li>
<li><a
href="https://github.com/boto/botocore/commit/cb07fe673070c453ece194edabe4511db47ccaeb"><code>cb07fe6</code></a>
Update to latest models</li>
<li><a
href="https://github.com/boto/botocore/commit/2d3b8f931ebb8ac73ed0ef65f768a9100e815edb"><code>2d3b8f9</code></a>
Merge branch 'release-1.40.15'</li>
<li><a
href="https://github.com/boto/botocore/commit/b341c8a4f798247e29dc2e226d1e9001a81c7cfa"><code>b341c8a</code></a>
Merge branch 'release-1.40.15' into develop</li>
<li><a
href="https://github.com/boto/botocore/commit/8bf6d3bc9d5b1f7b05459caae508737494815c8f"><code>8bf6d3b</code></a>
Bumping version to 1.40.15</li>
<li><a
href="https://github.com/boto/botocore/commit/ca2ef01a8b4c2a4bace8d8fcaf508d199e2f8f1f"><code>ca2ef01</code></a>
Update partitions file</li>
<li><a
href="https://github.com/boto/botocore/commit/adc93120be804adef40ad5437c9e6d10fda00a46"><code>adc9312</code></a>
Update endpoints model</li>
<li><a
href="https://github.com/boto/botocore/commit/3b27a77a78f6e8f9015ce52ba3784f0a225be1e2"><code>3b27a77</code></a>
Update to latest models</li>
<li><a
href="https://github.com/boto/botocore/commit/d174054a9ccf07486d15b07cfa906608a8971fb5"><code>d174054</code></a>
Fix use_ssl parameter ignored when custom HTTPS endpoint_url provided
(<a
href="https://redirect.github.com/boto/botocore/issues/3542">#3542</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/boto/botocore/compare/1.40.11...1.40.16">compare
view</a></li>
</ul>
</details>
<br />


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 show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

---------

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

2 participants