Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

go-cloud key escaping may lead to invalid objects for Azure #41

Open
srerickson opened this issue Jun 5, 2023 · 1 comment
Open

go-cloud key escaping may lead to invalid objects for Azure #41

srerickson opened this issue Jun 5, 2023 · 1 comment
Labels
bug Something isn't working

Comments

@srerickson
Copy link
Owner

The gocloud.dev/blob package escapes objects keys on write and unescapes them on read. For example, from the azureblob implementation:

// Go CDK supports all UTF-8 strings; to make this work with services lacking
// full UTF-8 support, strings must be escaped (during writes) and unescaped
// (during reads). The following escapes are performed for azureblob:
//   - Blob keys: ASCII characters 0-31, 34 ("\""), 35 ("#"), 37 ("%"), 63 ("?"),
//     92 ("\"), and 127 are escaped to "__0x<hex>__".

The storage locations for content paths using these characters won't match the values stored in inventory manifest. Storage root layouts that use percent encoding are also affected.

@srerickson srerickson added the bug Something isn't working label Jun 5, 2023
@srerickson srerickson changed the title go-cloud key escaping may lead to invalid objects go-cloud key escaping may lead to invalid objects for Azure Sep 7, 2023
@srerickson
Copy link
Owner Author

Close this when gocloud is removed as a dependency.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant