Skip to main content
Builders keep layer history, upload results, and URL-download metadata in one Store. Helpers and direct builders accept store=. Tree kinds separate reusable records from user sessions. Node data contains JSON values. See Build a Docker image, Tree stores, and Reuse uploads and retain their sources for retention, connection scope, and upload provenance. Upload reuse through the public file-transfer and store contracts.

class AsyncCachedFileTransfer

Cache content uploads; apply permissions from each current request. ttl is required and measured from upload completion. Hits do not renew it. Concurrent misses may upload the same content. The caller owns all components.

Methods

download_file()

Atomically save streamed content.
required
required
required
int
The number of downloaded bytes.

iter_file()

Yield file content. Override this buffered fallback for streaming backends.
required
required
AsyncGenerator[bytes, None]
File content chunks. Close the generator if iteration stops early.

class CachedFileTransfer

Cache content uploads; apply permissions from each current request. ttl is required and measured from upload completion. Hits do not renew it. Concurrent misses may upload the same content. The caller owns all components.

Methods

download_file()

Atomically save streamed content.
required
required
required
int
The number of downloaded bytes.

iter_file()

Yield file content. Override this buffered fallback for streaming backends.
required
required
Generator[bytes, None, None]
File content chunks. Close the generator if iteration stops early.

class UploadSnapshot

Source records kept in a separate namespace from upload store entries.

class AsyncFileSources

Source registry backed by records with implementation-defined retention in a caller-owned store. Upload invalidation does not remove source records. A source is provenance, not proof that the remote upload still exists or that the local file is unchanged.

class FileSource

class SyncFileSources

Source registry backed by records with implementation-defined retention in a caller-owned store. Upload invalidation does not remove source records. A source is provenance, not proof that the remote upload still exists or that the local file is unchanged. Bind cache namespaces to a server and an authorization context.

class StoreScope

A non-secret digest separating endpoint, project, credential, and profile.

Methods

from_client()

Derive a scope without storing credentials in cache keys or records.
required
default:"''"
StoreScope
StoreScopeA scope that changes when endpoint, project, credential, or profile changes.