Prior to version 7.2.19, client.put_object() took a metadata keyword argument, with a type of minio.helpers.DictType | None (where minio.helpers.DictType was dict[str, str | list[str] | tuple[str]].
In version 7.2.19, the argument was renamed to user_metadata, with a type of urllib3.HTTPHeaderDict | None. minio.helpers.DictType was also removed.
This means that any downstream code using client.put_object() has to choose which version to support.