Dictionary unpacking gives inconsistent (sometimes incorrect) results
Creating a new bug for this as per @cfbolz's request.
Quoting @cfbolz in https://github.com/pallets/werkzeug/pull/2447#issuecomment-1175270840
this area is a mess, and the pypy versions have gone back and forth on that a bunch. pypy 3.9 is not that consistent with itself atm either:
>>>> dict(md) {'a': 1} >>>> {**md} {'a': 1} >>>> func(**md) {'a': [1]}
whereas in CPython it's all {'a': 1}.
Note md
in this example is an instance of a werkzeug.datastructures.MultiDict
. But this bug can presumably be triggered using other Mapping types too.