bucketwarden-errors 0.1.0

BucketWarden S3 error catalogs and retry classification.
Documentation
&[
S3ServiceSpecificError {
        feature_id: "feat:bucketwarden.s3err.general.bucketnotempty",
        family: "general",
        code: "BucketNotEmpty",
        status: 409,
        message: "The bucket is not empty.",
    },
S3ServiceSpecificError {
        feature_id: "feat:bucketwarden.s3err.general.clienttokenconflict",
        family: "general",
        code: "ClientTokenConflict",
        status: 409,
        message: "The provided client token conflicts with an existing request.",
    },
S3ServiceSpecificError {
        feature_id: "feat:bucketwarden.s3err.general.conditionalrequestconflict",
        family: "general",
        code: "ConditionalRequestConflict",
        status: 409,
        message: "The conditional request had conflicting conditions.",
    },
S3ServiceSpecificError {
        feature_id: "feat:bucketwarden.s3err.general.connectionclosedbyrequester",
        family: "general",
        code: "ConnectionClosedByRequester",
        status: 400,
        message: "The requester closed the connection while the request was processing.",
    },
S3ServiceSpecificError {
        feature_id: "feat:bucketwarden.s3err.general.credentialsnotsupported",
        family: "general",
        code: "CredentialsNotSupported",
        status: 400,
        message: "The supplied credentials are not supported by this operation.",
    },
S3ServiceSpecificError {
        feature_id: "feat:bucketwarden.s3err.general.crosslocationloggingprohibited",
        family: "general",
        code: "CrossLocationLoggingProhibited",
        status: 403,
        message: "Cross-location logging is not permitted for this request.",
    },
S3ServiceSpecificError {
        feature_id: "feat:bucketwarden.s3err.general.devicenotactiveerror",
        family: "general",
        code: "DeviceNotActiveError",
        status: 400,
        message: "The requested device is not active.",
    },
S3ServiceSpecificError {
        feature_id: "feat:bucketwarden.s3err.general.endpointnotfound",
        family: "general",
        code: "EndpointNotFound",
        status: 400,
        message: "The requested endpoint was not found.",
    },
S3ServiceSpecificError {
        feature_id: "feat:bucketwarden.s3err.general.entitytoosmall",
        family: "general",
        code: "EntityTooSmall",
        status: 400,
        message: "The supplied entity is too small.",
    },
S3ServiceSpecificError {
        feature_id: "feat:bucketwarden.s3err.general.expiredtoken",
        family: "general",
        code: "ExpiredToken",
        status: 400,
        message: "The provided token has expired.",
    },
S3ServiceSpecificError {
        feature_id: "feat:bucketwarden.s3err.general.illegallocationconstraintexception",
        family: "general",
        code: "IllegalLocationConstraintException",
        status: 400,
        message: "The location constraint is invalid for this operation.",
    },
S3ServiceSpecificError {
        feature_id: "feat:bucketwarden.s3err.general.illegalversioningconfigurationexception",
        family: "general",
        code: "IllegalVersioningConfigurationException",
        status: 400,
        message: "The provided versioning configuration is invalid.",
    },
S3ServiceSpecificError {
        feature_id: "feat:bucketwarden.s3err.general.incompletebody",
        family: "general",
        code: "IncompleteBody",
        status: 400,
        message: "Your request body is incomplete.",
    },
S3ServiceSpecificError {
        feature_id: "feat:bucketwarden.s3err.general.incorrectendpoint",
        family: "general",
        code: "IncorrectEndpoint",
        status: 400,
        message: "The request was sent to an incorrect endpoint.",
    },
S3ServiceSpecificError {
        feature_id: "feat:bucketwarden.s3err.general.incorrectnumberoffilesinpostrequest",
        family: "general",
        code: "IncorrectNumberOfFilesInPostRequest",
        status: 400,
        message: "The POST request contains an incorrect number of files.",
    },
S3ServiceSpecificError {
        feature_id: "feat:bucketwarden.s3err.general.inlinedatatoolarge",
        family: "general",
        code: "InlineDataTooLarge",
        status: 400,
        message: "The inline data in the request is too large.",
    },
S3ServiceSpecificError {
        feature_id: "feat:bucketwarden.s3err.general.internalerror",
        family: "general",
        code: "InternalError",
        status: 500,
        message: "We encountered an internal error. Please try again later.",
    },
S3ServiceSpecificError {
        feature_id: "feat:bucketwarden.s3err.general.invalidaccesskeyid",
        family: "general",
        code: "InvalidAccessKeyId",
        status: 403,
        message: "The AWS access key id you provided does not exist.",
    },
S3ServiceSpecificError {
        feature_id: "feat:bucketwarden.s3err.general.invalidaccesspoint",
        family: "general",
        code: "InvalidAccessPoint",
        status: 400,
        message: "The specified access point is invalid.",
    },
S3ServiceSpecificError {
        feature_id: "feat:bucketwarden.s3err.general.invalidaccesspointaliaserror",
        family: "general",
        code: "InvalidAccessPointAliasError",
        status: 400,
        message: "The access point alias is invalid.",
    },
S3ServiceSpecificError {
        feature_id: "feat:bucketwarden.s3err.general.requesttimetooskewed",
        family: "general",
        code: "RequestTimeTooSkewed",
        status: 403,
        message: "The request time is too far in the past or future.",
    },
]