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

Basic implementation of OCM 1.2 payloads #5076

Open
wants to merge 14 commits into
base: master
Choose a base branch
from
Open

Basic implementation of OCM 1.2 payloads #5076

wants to merge 14 commits into from

Conversation

glpatcern
Copy link
Member

@glpatcern glpatcern commented Feb 12, 2025

This PR includes:

  • Adopting the new properties of the OCM 1.2 payloads, without implementing any new functionality for now. In particular, any non-empty requirement in a share will be rejected (a test was added for that).
  • Extending the OCM discovery endpoint.
  • Using the remote OCM discovery endpoint to establish the full URL of an incoming remote share, regardless if provided or not. When sending a share, though, we still send a full URL.
  • Caching the webdav client used to connect to remote endpoints, with added compatibility to OCM 1.0 remote servers.
  • Some refactoring and consolidation of duplicated code.
  • Improved logging.

@glpatcern glpatcern marked this pull request as draft February 12, 2025 16:58
Copy link

update-docs bot commented Feb 12, 2025

Thanks for opening this pull request! The maintainers of this repository would appreciate it if you would create a changelog item based on your changes.

@glpatcern glpatcern force-pushed the ocm1.2 branch 9 times, most recently from 4f33f55 to f041e87 Compare February 14, 2025 21:16
@glpatcern glpatcern force-pushed the ocm1.2 branch 9 times, most recently from 97fa98f to 6af8c62 Compare February 18, 2025 15:29
@glpatcern glpatcern changed the title WIP for OCM 1.2 Basic implementation of OCM 1.2 payloads Feb 20, 2025
@glpatcern glpatcern marked this pull request as ready for review February 21, 2025 06:59
Copy link
Member Author

@glpatcern glpatcern left a comment

Choose a reason for hiding this comment

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

OK, this is good enough for now: we discover remote endpoints according to specs, but we still send full URIs to remotes. Also the integration tests assume full URIs, so the discovery part is not covered (but was tested independently).
In the future we may reconfigure the test to set the owner's address to localhost:<port> and pass relative URIs so to trigger discovery (but https is assumed when contacting the remote, so we'd have to configure TLS on the test as well).

@glpatcern glpatcern requested a review from jessegeens March 5, 2025 17:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants