Regarding recent update of aioresponses, requiring all request kwargs to be picklable (deep-copyable)

Recently, an update in aioresponses has caused picklability (or deep-copyability) of kwargs of aiohttp client request methods as a requirement.

I understand the PR author’s motivation to make the tests more “robust” by making all passed arguments to be immutable or copied, but I also believe that aiohttp has never intended to require all its request arguments to be picklable.

Would there be a better solution?
(so that I could propose an alternative!)

Deep copy of request’s payload (e.g. opened huge file) can be problematic.

You are right, aiohttp was never designed with this limitation in mind. The immutability is a nice property, I love it; but the property is not applicable everywhere.