Now, setting metadata like that isn't a great idea. Doing it in my dev environment made `swift list` go from ~0.5s to ~100s (!) because py3's stdlib doesn't know how to handle the non-compliant header and aborts parsing -- see https://bugs.python.org/issue37093
So the *real* value at the moment comes from being able to *clear* the non-compliant metadata after wondering why everything got so slow after switching to python3. Without it, users would have to either switch back to py2 or just use curl.
The reason was hinted-at in https:/ /opendev. org/openstack/ python- swiftclient/ commit/ 7175069b that introduced the `or not six.PY2` -- basically, it allows users to continue doing things like
$ swift post -m '☃:❄'
which swift has allowed ever since account/container metadata was introduced back in https:/ /opendev. org/openstack/ swift/commit/ e8d3f260.
Now, setting metadata like that isn't a great idea. Doing it in my dev environment made `swift list` go from ~0.5s to ~100s (!) because py3's stdlib doesn't know how to handle the non-compliant header and aborts parsing -- see https:/ /bugs.python. org/issue37093
So the *real* value at the moment comes from being able to *clear* the non-compliant metadata after wondering why everything got so slow after switching to python3. Without it, users would have to either switch back to py2 or just use curl.