Skip to content

Support Dropbox references in get#359

Merged
AndreyVMarkelov merged 1 commit into
dropbox:masterfrom
AndreyVMarkelov:revisions_get
Jul 17, 2026
Merged

Support Dropbox references in get#359
AndreyVMarkelov merged 1 commit into
dropbox:masterfrom
AndreyVMarkelov:revisions_get

Conversation

@AndreyVMarkelov

Copy link
Copy Markdown
Contributor

Summary

  • allow get sources to use Dropbox paths, file IDs (id:), revisions (rev:), and namespace-relative paths (ns:)
  • preserve opaque Dropbox references unchanged while continuing to normalize ordinary paths
  • derive default local names and recursive layout from Dropbox metadata
  • centralize common metadata field access and update generated command documentation

Why

get previously normalized every source as a path, which prepended / to revision and identifier references. Passing supported Dropbox reference forms through unchanged enables downloading historical revisions and items addressed by ID or namespace.

User impact

Users can now run commands such as:

dbxcli get rev:a1c10ce0dd78 ./historical-file.txt

When the local target is omitted or is an existing directory, get uses the filename returned by Dropbox metadata.

Validation

  • gofmt
  • go vet ./...
  • go test ./... -count=1
  • go test -race ./...
  • go build ./...
  • golangci-lint v2.12.2 (0 issues)
  • govulncheck ./... (no vulnerabilities)
  • actionlint
  • generated command documentation and JSON schemas
  • live read-only manual tests for path, relative path, rev:, id:, and ns: sources; explicit/default/directory/stdout targets; text/JSON output; and recursive path/ID/namespace downloads
  • byte-for-byte checksum comparison across path, revision, ID, namespace, and stdout downloads

@AndreyVMarkelov
AndreyVMarkelov marked this pull request as ready for review July 17, 2026 07:07
@AndreyVMarkelov
AndreyVMarkelov merged commit 1e59484 into dropbox:master Jul 17, 2026
13 checks passed
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.

1 participant