pub struct CompatFlags {
pub flags_schema: u32,
pub endpoint_url: Option<String>,
pub region_override: Option<String>,
pub addressing_style: AddressingStyle,
pub signature_version: SignatureVersion,
pub checksum_mode: ChecksumMode,
pub accept_invalid_tls: bool,
pub expect_continue: bool,
pub chunked_upload: bool,
pub bucket_name_validation: BucketNameValidation,
pub unknown: BTreeMap<String, Value>,
}Expand description
Per-profile compatibility flags for S3-compatible storage providers.
All fields have sane defaults that work with AWS S3. Override only the fields that your provider requires.
Serialization uses camelCase for JSON round-trips with the frontend.
Fields§
§flags_schema: u32Schema version that emitted these flags. Used for forward-compat
migration. Always write 1 for v1 flags; a future bump to 2
signals a format change.
endpoint_url: Option<String>Custom base URL for the S3 endpoint, e.g. http://localhost:9000.
None means use the AWS regional endpoint.
region_override: Option<String>Pin all requests for this profile to a fixed region, ignoring any region the SDK would otherwise auto-detect.
addressing_style: AddressingStyleHow to form the S3 endpoint URL for bucket operations.
signature_version: SignatureVersionSignature algorithm. Default V4; V2 is a degraded-compat escape hatch.
checksum_mode: ChecksumModeWhether to send payload checksums on uploads.
accept_invalid_tls: boolAccept TLS certificates that fail validation (self-signed, expired). Security risk — only use for development / private networks.
expect_continue: boolSend Expect: 100-continue on PUT requests. Some proxies and older
providers reject the header; set to false to suppress it.
chunked_upload: boolUse chunked upload encoding (Transfer-Encoding: chunked) instead of
setting Content-Length upfront. Required for streaming uploads where
the total size is unknown at request start.
bucket_name_validation: BucketNameValidationHow strictly to validate bucket names before sending requests.
unknown: BTreeMap<String, Value>Unknown flags written by a newer schema version. Preserved verbatim on read and re-serialized on write so a downgrade does not lose them.
Trait Implementations§
Source§impl Clone for CompatFlags
impl Clone for CompatFlags
Source§fn clone(&self) -> CompatFlags
fn clone(&self) -> CompatFlags
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for CompatFlags
impl Debug for CompatFlags
Source§impl Default for CompatFlags
impl Default for CompatFlags
Source§impl<'de> Deserialize<'de> for CompatFlags
impl<'de> Deserialize<'de> for CompatFlags
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for CompatFlags
impl PartialEq for CompatFlags
Source§impl Serialize for CompatFlags
impl Serialize for CompatFlags
impl StructuralPartialEq for CompatFlags
Auto Trait Implementations§
impl Freeze for CompatFlags
impl RefUnwindSafe for CompatFlags
impl Send for CompatFlags
impl Sync for CompatFlags
impl Unpin for CompatFlags
impl UnsafeUnpin for CompatFlags
impl UnwindSafe for CompatFlags
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<'de, D, R> CommandArg<'de, R> for Dwhere
D: Deserialize<'de>,
R: Runtime,
impl<'de, D, R> CommandArg<'de, R> for Dwhere
D: Deserialize<'de>,
R: Runtime,
§fn from_command(command: CommandItem<'de, R>) -> Result<D, InvokeError>
fn from_command(command: CommandItem<'de, R>) -> Result<D, InvokeError>
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more