Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Register
  • Sign in
  • N neo
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Merge requests 1
    • Merge requests 1
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Activity
  • Graph
  • Jobs
  • Commits
Collapse sidebar
  • Kirill Smelkov
  • neo
  • Merge requests
  • !3

Y client: Adjust URI scheme to move client-specific options to fragment

  • Review changes

  • Download
  • Patches
  • Plain diff
Closed Kirill Smelkov requested to merge t+uri-client-options into t May 18, 2023
  • Overview 5
  • Commits 2
  • Pipelines 0
  • Changes 2

For example option compress controls kind of compression that client performs when saving data to server. Similarly cache-size, logfile and read-only adjust on-client behaviour, not server.

From https://lab.nexedi.com/nexedi/neoppod/merge_requests/18#note_124725 :

In general the most correct thing to do is: 

- use host part for where to connect (host:port, list of host ports, UNIX socket, etc)
- use path part to identify a database or other on-server resource
- use query part for parameters that are passed to remote server (e.g. `storage` in case of ZEO)
- use fragment part for local parameters that are not passed to remote server (e.g. local `logfile`)
- use credentials part for things required to authenticate/encrypt.

To normalize an URL wcfs client would drop credentials and fragment, but keep host, path and query.

Fragments are documented not to be sent to remote side and to be evaluated by local side only.

-> Move options that control client behaviour to fragment.

/cc @levin.zimmermann

Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: t+uri-client-options
GitLab Nexedi Edition | About GitLab | About Nexedi | 沪ICP备2021021310号-2 | 沪ICP备2021021310号-7