git-annex/doc/bugs/versioned_S3_generates_invalid_encoded_url.mdwn

22 lines
938 B
Text
Raw Normal View History

2019-08-15 16:37:12 +00:00
See https://github.com/OpenNeuroOrg/datalad-service/issues/99
where the url generated by a versioned S3 export remote did not url-encode
the "+" in the S3 object ID.
This breaks git-annex info's display of urls for a file.
It also breaks git-annex get from a public S3 remote. While the object
in that issue is versioned, other code paths for non-versioned objects
have the same problem.
https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-header-based-auth.html
describes an URI encoding that appears non-standard;
Aws.S3.Core.s3UriEncode implements that. But is S3 using the same
non-standard URI encoding for URLs to objects?
https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html
documents a need to url-encode a few punctuation characters, but is
frustratingly vague.
Experimentally, even url-encoding alphanumerics works in these urls.
So it would be ok to use a standard URI encoder.
> [[fixed|done]] --[[Joey]]