Expand description

Configuration items

Many of the fields of Config are implemented with the new type pattern. This is mainly to allow them to be initialized from the environment.

Structs

Buffer size of a concurrent download task

Wraps any CondowClient to add retry behaviour

A configuration for Condow.

Make sure that the network stream is always actively pulled into an intermediate buffer. This is not always the case since some low concurrency downloads require the strem to be actively pulled. This also allows for detection of panics. The default is false which means this feature is turned off.

Multiplies by 1_073_741_824 when converted to a u64

Multiplies by 1_000_000_000 when converted to a u64

Multiplies by 1_024 when converted to a u64

Multiplies by 1_000 when converted to a u64

If set to true download related messages are logged at DEBUG level. Otherwise at INFO level. The default is true (log on DEBUG level).

Maximum time to wait for download buffers when all were full in ms

Maximum concurrency of a single download

Multiplies by 1_048_576 when converted to a u64

Multiplies by 1_000_000 when converted to a u64

The minimum number of bytes a download must consist of for the parts to be downloaded concurrently. Downloading concurrently has an overhead so it can make sens to set this value greater that PART_SIZE_BYTES.

The minimum number of parts a download must consist of for the parts to be downloaded concurrently Depending on the part sizes it might be more efficient to set a number higer than 2. Downloading concurrently has an overhead. This setting plays together with MinBytesForConcurrentDownload. Setting this value to 0 or 1 makes no sense and has no effect. The default is 2.

Size of the parts in bytes a download is split into

Configures retries with exponential backoff

The factor the previous retry is multiplied by. This is actually what makes it exponentially when greater than 1.0. Default is 1.5.

The maximum retry for a retry attempt in milliseconds. Default is 5 seconds.

The delay for the first retry attempt in ms. Default is 50ms.

The maximum number of retry attempts. This excludes the original attempt. Default is 2.

The maximum number of attempts to resume a byte stream from the same offset. Default is 3.

Multiplies by 1 when converted to a u64

Enums

Define how parts for a sequential download should be treated.

A value with a unit prefix.