aio-libs / yarl

Yet another URL library
https://yarl.aio-libs.org
Apache License 2.0
1.27k stars 157 forks source link

Test aiohttp (and maybe other dependent libraries) before new releases #534

Open besfahbod opened 3 years ago

besfahbod commented 3 years ago

Many complexities arose from 1.6.0 release (https://github.com/aio-libs/yarl/pull/503 breaking API), specially aiohttp breaking in production services, and fixing the yarl as aiohttp dependency and in production configuration becoming a big challenge.

To prevent something like this happening again, maybe yarl should have CI tests, at least as a warning, to ensure aiohttp passes tests with new changes, so big issues like that can be caught before a release is made?

If not a CI check, at least some scripts to be run manually.

What do you think?


Related convo:

webknjaz commented 3 years ago

It'd be interesting to trigger cross-project tests if somebody contributes that as a CI improvement. Although, I'm not sure how this would work. I'd imagine that pushes to master could trigger nightly tests in aiohttp repo. The only CI that implements cross-project dependencies flexibly I know of is Zuul but does don't use it. Another option would be having a GitHub App that would orchestrate depending on cross-project CI statuses.

asvetlov commented 3 years ago

A simple job that installs yarl with the latest released aiohttp can help. The task sounds not too complex. Does anybody want to be a champion?

Dreamsorcerer commented 8 months ago

Example already being done in llhttp, should be easy to do something similar: https://github.com/nodejs/llhttp/blob/main/.github/workflows/aiohttp.yml

webknjaz commented 8 months ago

Yeah, I really like how the PyCA folks do this... Also, it might be much easier as the packaging updates I just applied here over the past days get integrated in other projects too.