dropbox/stone

ReadPath regex in files.stone does not match U+2028 in filename

devPalacio opened this issue · 6 comments

Describe the bug
dropbox/dropbox-sdk-java#490
This issue was reported in the dropbox java sdk.

To Reproduce
Attempt to call getMetadata with a filename that has U+2028 in it. It will fail to match the regex and throw java.lang.IllegalArgumentException: String 'path' does not match pattern.

If you attempt to escape the Unicode character, the server returns a malformed path error.

Expected Behavior
Files with a valid path would match the regex and return the file metadata.

Actual Behavior
java.lang.IllegalArgumentException: String 'path' does not match pattern.
or
Malformed path error from the server

Versions

  • What version of the Stone are you using? Latest stone, latest api spec from Sep 1, 2022
  • What version of the language are you using? Java
  • What platform are you using? (if applicable) Dropbox Java Sdk

Additional context
I think the fix is as simple as changing the regex to
(/(.|[\r\n\u2028])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/.*)?)
in files.stone but would like somebody with more stone experience to chime in.

has the bug been fix?

@HermanBide No, this issue has not been resolved yet.

can i contribute

We welcome PRs, but I can't promise a timeline for when the team would be able to review it, do a release, etc.

@greg-db in what folder/file can i find this bug?

@HermanBide I don't have additional information to share on this beyond what's included in the original description here.