-
Notifications
You must be signed in to change notification settings - Fork 389
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
Issue with aiohttp + vcr: multidict 4.7.0 might be an issue #497
Comments
If I get time (which I might not) gonna open a corresponding issue in aiohttp. Closing this, as it's probably not directly a vcr issue |
For SEO related purposes, I was getting |
Thanks for reporting and documenting this issue. |
@sudodoki @neozenith This was a regression in multidict which should be fixed soon. |
Seems that 4.7.1 was released and issue might be fixed, but not sure, how to handle that in library's dependencies to avoid accidentally getting the one that doesn't work |
We can put in our https://setuptools.readthedocs.io/en/latest/setuptools.html#declaring-dependencies Just need to know which versions or a range we should avoid. |
4.6.1 worked ok, 4.7.0 (following version) - didn't work, 4.7.1 (newer one, supposedly, the one fixing the regression) didn't work for me as well (I didn't rewrite the cassettes though). |
@sudodoki Can you document how your service is breaking with the updated multidict? I'm seeing successful tests using aiothttp + 4.7.1. |
@vEpiphyte Yeah, I can try, but it might be the issue with me updating multidict only and using it with older aiohttp |
@sudodoki I reproduced an issue issue when working with a project that had some older cassettes which had yaml pyobject hinting in them (vcrpy 1.13 and multidict 4.7.1). Ultimately the deserializer code was hiding the following exception: code: https://github.com/kevin1024/vcrpy/blob/master/vcr/serialize.py#L40
I encountered the following exception:
This causes deserialization failures and subsequently the cassette appears empty and vcrpy has no content to replay. This can result in a existing cassette being overwritten. Reverting to multidict 4.6.1 works. Going to try re-recording the cassettes with a newer version of VCRPy to see if this issues persists or is just an artifact of the yaml serialization including the pyobject reference. |
Using VCRPY 3.0.0 and multidict 4.7.1 works fine. The object serialization was fixed in the 2.1.x branch due to #454 . |
Hello. Thanks for this awesome tool.
On dec 11, 2019, multidict released a new version and it seemed to break our CI setup. We are using aiohttp (3.6.2) + vcrpy (2.0.1) on Python 3
Freezing multidict==4.6.1 seemed to fix the issue. And even though it might be something related to changes in aiohttp, just leaving it here in case anyone else runs into this.
The text was updated successfully, but these errors were encountered: