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

Add aiohttp tests to CI #1415

Merged
merged 10 commits into from
Nov 21, 2024
Merged

Add aiohttp tests to CI #1415

merged 10 commits into from
Nov 21, 2024

Conversation

Cycloctane
Copy link
Contributor

What do these changes do?

Test aiohttp with new changes in yarl to prevent unexpected breaking changes.

Are there changes in behavior for the user?

Related issue number

fixes #534

Checklist

  • I think the code is well written
  • Unit tests for the changes exist
  • Documentation reflects the changes

@psf-chronographer psf-chronographer bot added the bot:chronographer:provided There is a change note present in this PR label Nov 14, 2024
Copy link

codspeed-hq bot commented Nov 14, 2024

CodSpeed Performance Report

Merging #1415 will not alter performance

Comparing Cycloctane:tests_aiohttp (1de8cbf) with master (fc08cb8)

Summary

✅ 85 untouched benchmarks

Copy link

codecov bot commented Nov 14, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 96.11%. Comparing base (fc08cb8) to head (1de8cbf).
Report is 1 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #1415   +/-   ##
=======================================
  Coverage   96.11%   96.11%           
=======================================
  Files          31       31           
  Lines        5871     5871           
  Branches      348      348           
=======================================
  Hits         5643     5643           
  Misses        202      202           
  Partials       26       26           
Flag Coverage Δ
CI-GHA 96.11% <ø> (ø)
MyPy 49.35% <ø> (ø)
OS-Linux 99.55% <ø> (ø)
OS-Windows 99.62% <ø> (ø)
OS-macOS 99.30% <ø> (ø)
Py-3.10.11 99.28% <ø> (ø)
Py-3.10.15 99.51% <ø> (ø)
Py-3.11.10 99.51% <ø> (ø)
Py-3.11.9 99.28% <ø> (ø)
Py-3.12.7 99.51% <ø> (ø)
Py-3.13.0 99.51% <ø> (ø)
Py-3.9.13 99.24% <ø> (ø)
Py-3.9.20 99.47% <ø> (ø)
Py-pypy7.3.16 99.53% <ø> (ø)
Py-pypy7.3.17 99.55% <ø> (ø)
VM-macos-latest 99.30% <ø> (ø)
VM-ubuntu-latest 99.55% <ø> (ø)
VM-windows-latest 99.62% <ø> (ø)
pytest 99.55% <ø> (ø)

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

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


🚨 Try these New Features:

Copy link
Member

@asvetlov asvetlov left a comment

Choose a reason for hiding this comment

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

Awesome, thanks!

Would you consider testing against maintained aiohttp releases as well?

I see two options:

  1. Install aiohttp from PyPI tarball. It has tests, maybe tarball could be combined with wheels to avoid compilation steps.
  2. Install from GitHub maintained branch.

For any approach editing workflow file for updating a list of supported aiohttp versions is totally fine.

I don't know which is better. Maybe fast aiohttp installation time could be a priority.

It could be implemented in the following PR, sure.

What is your opinion?

@Cycloctane
Copy link
Contributor Author

Cycloctane commented Nov 14, 2024

Awesome, thanks!

Would you consider testing against maintained aiohttp releases as well?

I see two options:

1. Install aiohttp from PyPI tarball. It has tests, maybe tarball could be combined with wheels to avoid compilation steps.

2. Install from GitHub maintained branch.

For any approach editing workflow file for updating a list of supported aiohttp versions is totally fine.

I don't know which is better. Maybe fast aiohttp installation time could be a priority.

It could be implemented in the following PR, sure.

What is your opinion?

I think both options are acceptable if they achieve the same result. Downloading tarball and whl from pypi may be better since it can avoid compiling and building steps.

CHANGES/1415.contrib.rst Outdated Show resolved Hide resolved
.github/workflows/aiohttp.yml Outdated Show resolved Hide resolved
.github/workflows/aiohttp.yml Show resolved Hide resolved
@Dreamsorcerer
Copy link
Member

Dreamsorcerer commented Nov 15, 2024

Downloading tarball and whl from pypi may be better since it can avoid compiling and building steps.

So, one reason you probably want to stick to checking out the aiohttp code, is when yarl decides to break something in aiohttp on-purpose, you won't be able to get the tests passing on a released version of aiohttp. By checking out the code from the repo, we can adjust the tests on aiohttp to allow the new behaviour and then rerun the tests here against the new aiohttp commit.

@bdraco
Copy link
Member

bdraco commented Nov 21, 2024

/home/docs/checkouts/readthedocs.org/user_builds/yarl/checkouts/1415/docs/changes.rst:19: WARNING: py:mod reference target not found: aiohttp [ref.mod]

Changelog message isn't formatting

@bdraco
Copy link
Member

bdraco commented Nov 21, 2024

/home/docs/checkouts/readthedocs.org/user_builds/yarl/checkouts/1415/docs/changes.rst:19: WARNING: py:mod reference target not found: aiohttp [ref.mod]

Changelog message isn't formatting

I'd go with aiohttp instead since we don't want to add an downstream project to the intersphinx_mapping as its unlikely to ever be used.

CHANGES/1415.contrib.rst Outdated Show resolved Hide resolved
@bdraco
Copy link
Member

bdraco commented Nov 21, 2024

Thanks @Cycloctane

@bdraco bdraco merged commit b7bdfd5 into aio-libs:master Nov 21, 2024
46 of 48 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bot:chronographer:provided There is a change note present in this PR
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Test aiohttp (and maybe other dependent libraries) before new releases
5 participants