I have just pulled the `latest` Docker image and I'm getting

```
Unable to unmarshall response (Data read has a different checksum than expected.)
```

errors when using `S3Client#putObject` from the AWS SDK. This is almost identical to #1611 from October.

Fixing to version 0.10.7 fixes the issue. Looking at the commits since this version was released (09-Jan-2020) the following PRs are the only ones that mention S3:

- https://github.com/localstack/localstack/pull/1965
- https://github.com/localstack/localstack/pull/1976
if isinstance(value, dict):
        keys_list = list(value.keys())
        
        if keys_list == ['Ref']:
            result = resolve_ref(stack_name, value['Ref'],
                resources, attribute='PhysicalResourceId')
            return result
        if keys_list and keys_list[0].lower() == 'fn::getatt':
            return resolve_ref(stack_name, value[keys_list[0]][0],
                resources, attribute=value[keys_list[0]][1])
        if keys_list and keys_list[0].lower() == 'fn::join':
            return value[keys_list[0]][0].join(value[keys_list[0]][1])
        if keys_list and keys_list[0].lower() == 'fn::sub':
            result = value[keys_list[0]][0]
            for key, val in value[keys_list[0]][1].items():
                val = resolve_refs_recursively(stack_name, val, resources)
                result = result.replace('${%s}' % key, val)
            return result
        else:
            for key, val in iteritems(value):
                value[key] = resolve_refs_recursively(stack_name, val, resources)
    if isinstance(value, list):
        for i in range(0, len(value)):
            value[i] = resolve_refs_recursively(stack_name, value[i], resources)
    return value
def update_resource(resource_id, resources, stack_name):
    resource = resources[resource_id]
    resource_type = get_resource_type(resource)
    if resource_type not in UPDATEABLE_RESOURCES: