Skip to content

🧪 Run tests from sdist like downstreams - #13388

Draft
webknjaz wants to merge 4 commits into
aio-libs:masterfrom
webknjaz:testing/wheel-ci-cd-from-sdist
Draft

🧪 Run tests from sdist like downstreams#13388
webknjaz wants to merge 4 commits into
aio-libs:masterfrom
webknjaz:testing/wheel-ci-cd-from-sdist

Conversation

@webknjaz

Copy link
Copy Markdown
Member

What do these changes do?

This allows us make sure everything they need is shipped through PyPI. And brings us closer to how pip install would build wheels in the wild. We now also run tests in CI from sdist.

Are there changes in behavior for the user?

Nope.

Is it a substantial burden for the maintainers to support this?

It's actually bringing the infra closer to the rest of the repos. So it's a win.

Related issue number

And this should help us out getting CI/CD to:

Checklist

  • I think the code is well written
  • Unit tests for the changes exist
  • Documentation reflects the changes
  • If you provide code modification, please add yourself to CONTRIBUTORS.txt
    • The format is <Name> <Surname>.
    • Please keep alphabetical order, the file is sorted by names.
  • Add a new news fragment into the CHANGES/ folder
    • name it <issue_or_pr_num>.<type>.rst (e.g. 588.bugfix.rst)

    • if you don't have an issue number, change it to the pull request
      number after creating the PR

      • .bugfix: A bug fix for something the maintainers deemed an
        improper undesired behavior that got corrected to match
        pre-agreed expectations.
      • .feature: A new behavior, public APIs. That sort of stuff.
      • .deprecation: A declaration of future API removals and breaking
        changes in behavior.
      • .breaking: When something public is removed in a breaking way.
        Could be deprecated in an earlier release.
      • .doc: Notable updates to the documentation structure or build
        process.
      • .packaging: Notes for downstreams about unobvious side effects
        and tooling. Changes in the test invocation considerations and
        runtime assumptions.
      • .contrib: Stuff that affects the contributor experience. e.g.
        Running tests, building the docs, setting up the development
        environment.
      • .misc: Changes that are hard to assign to any of the above
        categories.
    • Make sure to use full sentences with correct case and punctuation,
      for example:

      Fixed issue with non-ascii contents in doctest text files
      -- by :user:`contributor-gh-handle`.

      Use the past tense or the present tense a non-imperative mood,
      referring to what's changed compared to the last released version
      of this project.

@webknjaz webknjaz self-assigned this Aug 11, 2026
@webknjaz webknjaz added infra meta github_actions Pull requests that update GitHub Actions code backport-3.14 Trigger automatic backporting to the 3.14 release branch by Patchback robot backport-3.15 Trigger automatic backporting to the 3.15 release branch by Patchback robot labels Aug 11, 2026
@codecov

codecov Bot commented Aug 11, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 98.41%. Comparing base (d041d4d) to head (c41a21f).
⚠️ Report is 3 commits behind head on master.
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@            Coverage Diff             @@
##           master   #13388      +/-   ##
==========================================
- Coverage   98.99%   98.41%   -0.59%     
==========================================
  Files         132      133       +1     
  Lines       49454    49746     +292     
  Branches     2572     2629      +57     
==========================================
- Hits        48959    48958       -1     
- Misses        371      663     +292     
- Partials      124      125       +1     
Flag Coverage Δ
Autobahn 21.95% <ø> (-0.14%) ⬇️
CI-GHA 98.32% <ø> (-0.60%) ⬇️
OS-Linux 98.09% <ø> (-0.60%) ⬇️
OS-Windows 96.46% <ø> (-0.59%) ⬇️
OS-macOS 97.35% <ø> (-0.59%) ⬇️
Py-3.10 97.54% <ø> (-0.59%) ⬇️
Py-3.11 97.80% <ø> (-0.60%) ⬇️
Py-3.12 97.88% <ø> (-0.60%) ⬇️
Py-3.13 97.87% <ø> (-0.60%) ⬇️
Py-3.14 97.88% <ø> (-0.60%) ⬇️
Py-3.14t 96.97% <ø> (-0.60%) ⬇️
Py-pypy-3.11 96.83% <ø> (-0.60%) ⬇️
VM-macos 97.35% <ø> (-0.59%) ⬇️
VM-ubuntu 98.09% <ø> (-0.60%) ⬇️
VM-windows 96.46% <ø> (-0.59%) ⬇️
cython-coverage 38.15% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

@webknjaz
webknjaz force-pushed the testing/wheel-ci-cd-from-sdist branch 6 times, most recently from 76ee2ad to 69d5ed8 Compare August 11, 2026 23:15
@codspeed-hq

codspeed-hq Bot commented Aug 11, 2026

Copy link
Copy Markdown

Merging this PR will improve performance by 8.66%

⚠️ Different runtime environments detected

Some benchmarks with significant performance changes were compared across different runtime environments,
which may affect the accuracy of the results.

Open the report in CodSpeed to investigate

⚡ 3 improved benchmarks
✅ 81 untouched benchmarks
⏩ 83 skipped benchmarks1

Performance Changes

Benchmark BASE HEAD Efficiency
test_simple_web_file_response[ssl-large] 307.7 ms 281.5 ms +9.3%
test_resolve_gitapi 644.3 ms 594.2 ms +8.42%
test_resolve_gitapi_subapps 654.3 ms 604.4 ms +8.26%

Tip

Curious why this is faster? Comment @codspeedbot explain why this is faster on this PR, or directly use the CodSpeed MCP with your agent.


Comparing webknjaz:testing/wheel-ci-cd-from-sdist (c41a21f) with master (d041d4d)2

Open in CodSpeed

Footnotes

  1. 83 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports.

  2. No successful run was found on master (77c5108) during the generation of this report, so d041d4d was used instead as the comparison base. There might be some changes unrelated to this pull request in this report.

@webknjaz
webknjaz force-pushed the testing/wheel-ci-cd-from-sdist branch 3 times, most recently from d059b68 to b99dc7b Compare August 12, 2026 21:18
This allows us make sure everything they need is shipped through PyPI.
And brings us closer to how `pip install` would build wheels in the
wild. We now also run tests in CI from sdist.

And this should help us out getting CI/CD to:
* aio-libs#7632
* aio-libs#13363
* aio-libs#13353
@webknjaz
webknjaz force-pushed the testing/wheel-ci-cd-from-sdist branch from b99dc7b to 21560bc Compare August 12, 2026 23:14
@webknjaz
webknjaz force-pushed the testing/wheel-ci-cd-from-sdist branch from 21560bc to c41a21f Compare August 12, 2026 23:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport-3.14 Trigger automatic backporting to the 3.14 release branch by Patchback robot backport-3.15 Trigger automatic backporting to the 3.15 release branch by Patchback robot github_actions Pull requests that update GitHub Actions code infra meta

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant