Awskit_s3_eioEio S3 adapter.
Operations are direct-style and stream through Awskit_eio.Runtime. Local-path body and reader helpers live under Body and Reader; managed upload/download helpers live under Object.Transfer.
Eio S3 client connection. Create with create.
module Runtime : Awskit_s3.RUNTIME with type 'a t = 'a and type connection = tDirect-style S3 runtime used by Awskit_s3.Make.
val create :
sw:Eio.Switch.t ->
env:< clock : _ Eio.Time.clock ; net : _ Eio.Net.t.. > ->
https:'flow Awskit_eio.https ->
region:string ->
credentials:Awskit.Credentials.t ->
?retry_policy:Awskit.Retry.t ->
?random_float:(upper_bound:float -> float) ->
?timeout_policy:Awskit.Timeout.policy ->
?endpoint_config:Awskit_s3.Endpoint_config.t ->
?max_response_drain_bytes:int ->
unit ->
(t, Awskit_s3.Error.t) Stdlib.resultCreate an Eio S3 client.
https is forwarded to Awskit_eio.create. Use Awskit_eio.http_only only for plain HTTP endpoints such as local tests; applications targeting HTTPS should pass a connector compatible with Cohttp_eio.Client.make ~https. region and credentials are explicit. Use endpoint_config for AWS endpoint variants, local S3-compatible tests, or explicit endpoints that use S3-compatible signing/addressing rules. retry_policy defaults to Awskit.Retry.default. max_response_drain_bytes controls how much response body the runtime drains after successful consumers.
module Body : sig ... endmodule Reader : sig ... endmodule Object : sig ... endmodule Bucket : Awskit_s3.BUCKET with type connection := t and type 'a io := 'aBucket operations using direct-style Eio results.
module Multipart :
Awskit_s3.MULTIPART
with type connection := t
and type 'a io := 'a
and type request_body := Body.tMultipart operations using direct-style Eio results.
module Presigned :
Awskit_s3.PRESIGNED with type connection := t and type 'a io := 'aPresigned request artifact helpers using the client's region, credentials, clock, and endpoint configuration.