Skip to content

Rest xml WiP#36

Closed
chris-armstrong wants to merge 2 commits into
mainfrom
s3-impl
Closed

Rest xml WiP#36
chris-armstrong wants to merge 2 commits into
mainfrom
s3-impl

Conversation

@chris-armstrong

Copy link
Copy Markdown
Owner

No description provided.

Add design docs in refactorings/ and expand TODO.md with the restXml
and S3 work items.

- refactorings/restxml_s3_support.md: gap analysis against the smithy
  restXml conformance suite and the real S3 model, ordered implementation
  tiers (T0 generic restXml, T1 streaming, T2 S3 customizations, T3
  production hardening).
- refactorings/restxml_s3_interfaces.md: interface-change proposals and
  annotation-by-annotation resolution reference (§1 streaming ops,
  §2 S3 client options, §3 type/builder decisions, §5 HTTP location
  binding routing, §6 master annotation table, §7 open questions,
  §8 spec-research-backed resolutions, §9 confirmed decisions).
- TODO.md: expand the REST/S3 protocol entries into the concrete
  checklist; flag aws-chunked trailer checksums as deferred and
  SelectObjectContent (S3 Select) as deprioritised since S3 Select is
  no longer available to new customers.

Decisions recorded: streaming I/O is essential (Tier 1a/1b) and ships
with the first S3 cut; aws-chunked trailer checksums (1c) and the
event-stream codec (1d) are deferred/deprioritised. Content-Length order
= B (§8.4); event-stream codec = hand-rolled vendored CRC32 (§8.9);
auth scheme selection = codegen-driven (§8.10).
…pe decisions

- Replace Eio.Flow.source_read with Eio.Flow.source throughout.
- Make Service_customization.t a closed plain variant (S3 of S3.t).
- Add a tier glossary (T0/T1/T2/T3) and align labels.
- Redesign streaming as HTTP-implementation-agnostic: Body.Stream sub-module
  and  input_body variant, with an
  SDK-side body_to_flow helper.
- Document the extended AwsErrors.aws_service_error shape (message,
  request_id, _type).
- Mark SelectObjectContent / Amazon Event Stream as dropped, not
  deprioritised, because S3 Select is deprecated.
- Add ?http_options redirect policy to Context and the touched-files list.
- Document S3 options precedence (client-level vs operation-level only).
- Clarify Content-Length resolution with the new Stream producer design.
- Expand dot-segment preservation to cover Sign canonical-URI handling.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant