kaliber-scala / play-s3

S3 module for Play
MIT License
119 stars 49 forks source link

Url encode filename in bucket file on s3 request #91

Open hodga opened 6 years ago

hodga commented 6 years ago

I found out it is not a signer issue. First i tried encoding the path inside the Signer, but that required me to remove the encoding on "be able to add and delete files with 'weird' names" test. This again led to a Exception because of a invalid url inside WsRequest.

This might lead to backwards compatibility issue if someone else url encode their filenames already. I guess it is possible to check if the filename already is encoded before encoding it, but i decided to keep it simple.

EECOLOR commented 6 years ago

@hodga That's great. Make sure you reference the issue in the commit message: ... - fixes #89. Since this is a change that is not backwards compatible this change should result in a major version bump.

It would also be nice to add the workaround AwsUrlEncoder.encodePath to #89 for people that do not want to wait for or upgrade to a new major version.

Just for future wanderers, in the past we had a similar issue #19

EECOLOR commented 6 years ago

Maybe @lucianenache can help you to release the new version once you have made the appropriate changes.

hodga commented 6 years ago

Updated, will also add the workaround on #89 :)