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

feat: add jfrog test setup for webdav #4265

Merged
merged 16 commits into from
Feb 27, 2024
Merged

feat: add jfrog test setup for webdav #4265

merged 16 commits into from
Feb 27, 2024

Conversation

zjregee
Copy link
Member

@zjregee zjregee commented Feb 26, 2024

fix: #4171

@zjregee
Copy link
Member Author

zjregee commented Feb 26, 2024

It looks like running jfrog directly might fail on some tests, I will attempt to reconfigure jfrog later.

@Xuanwo
Copy link
Member

Xuanwo commented Feb 26, 2024

It looks like running jfrog directly might fail on some tests, I will attempt to reconfigure jfrog later.

It could also be problems of opendal itself.

@Xuanwo
Copy link
Member

Xuanwo commented Feb 26, 2024

For example, jfrog returns 200 for rename success:

Unexpected (persistent) at rename, context: { uri: http://127.0.0.1:8081/artifactory/example-repo-local/4b4169a6-08ff-40e1-907b-f07deccd5e67/b95cf5c9-e399-40a4-af59-20760ece910d, response: Parts { status: 200, version: HTTP/1.1, headers: {"x-jfrog-version": "Artifactory/7.77.5 77705900", "x-artifactory-id": "e44bf43451c1c186:-1fcda5a9:18de38a6cca:-8000", "x-artifactory-node-id": "062242c5aed1", "transfer-encoding": "chunked", "date": "Mon, 26 Feb 2024 03:53:58 GMT"} }, service: webdav, from: b95cf5c9-e399-40a4-af59-20760ece910d, to: e265191f-bca1-412e-9874-b824789e035a/8b0aa2ba-1d41-4782-9584-8eb83c286629/c819085a-672e-45ff-b426-67d77bd45627 }

We should allow it.

@Xuanwo
Copy link
Member

Xuanwo commented Feb 27, 2024

Ok, I found something really interesting...

In XML, content such as &xxxx; is considered escaped content and is treated specially. For example, & becomes & and " becomes ". The library quick-xml converts these escaped characters back into their original form during deserialization.

However, we encountered a test case containing the sequence &()_+-=;, which quick-xml fails to recognize.

@Xuanwo
Copy link
Member

Xuanwo commented Feb 27, 2024

Ok, I found something really interesting...

I created an issue at upstream tafia/quick-xml#719, we can workaround it first.

Signed-off-by: Xuanwo <github@xuanwo.io>
Signed-off-by: Xuanwo <github@xuanwo.io>
Signed-off-by: Xuanwo <github@xuanwo.io>
Signed-off-by: Xuanwo <github@xuanwo.io>
@Xuanwo
Copy link
Member

Xuanwo commented Feb 27, 2024

Hi, @zjregee, thanks a lot for your contribution! I jumped into this PR because I found something very odd that makes debugging it quite tedious. I hope you don't feel like you're wasting your time.

Most webdav issues have been fixed now, we can move forward!

@zjregee
Copy link
Member Author

zjregee commented Feb 27, 2024

Thanks a lot for your help, it looks like things are working out!

Copy link
Member

@Xuanwo Xuanwo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Test passed. Let's move!

@Xuanwo Xuanwo merged commit b788b14 into apache:main Feb 27, 2024
59 checks passed
@zjregee zjregee deleted the add-jfrog-test-setup branch February 27, 2024 09:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add new service test for webdav: JFrog Artifactory as a WebDAV storage
2 participants