Skip to content

Conversation

@jeffreyaven
Copy link
Member

Description

Please include a summary of the changes and the related issue(s). Please also include relevant motivation and context.

Checklist

Please make sure that the following criteria are met:

  • The PR title is descriptive.
  • I have ⭐'ed the stackql and this repo.

Additional Notes

Add any additional information or context that might help the reviewers.

Add complete implementations for the four missing protocol processors:

- aws_json_1_0.py: AWS JSON 1.0 protocol (38 services)
  Uses X-Amz-Target header with POST requests and application/x-amz-json-1.0
  content type

- rest_xml.py: REST XML protocol (4 services including S3 Control)
  Uses HTTP traits (method, uri) like restJson1 but with application/xml
  request bodies and text/xml responses

- aws_query.py: AWS Query protocol (16 services including Redshift)
  Uses Action and Version query parameters with both GET and POST methods
  Response content type is text/xml

- ec2_query.py: EC2 Query protocol (1 service - EC2)
  Similar to awsQuery with EC2-specific handling including xml name traits
  for list parameters. Uses /#Action={operation} path pattern

All processors follow the same annotation standards as the existing
restJson1 and awsJson1_1 implementations, including x-aws-operation-name,
x-aws-protocol, and x-stackql-serviceName extensions.
Generated OpenAPI 3.1.0 specifications for all 404 AWS services using
the updated protocol processors:

- 240 services using restJson1
- 105 services using awsJson1_1 (in testdir/)
- 38 services using awsJson1_0
- 16 services using awsQuery
- 4 services using restXml
- 1 service using ec2Query (EC2)

All specs include proper AWS annotations and follow the stackql provider
format with x-aws-operation-name, x-stackql-serviceName, and regional
endpoint configurations.
Generated OpenAPI specs for 105 AWS services using the awsJson1_1 protocol.
These are output to testdir/ as per the original processor implementation.
@jeffreyaven jeffreyaven merged commit a195f95 into main Dec 9, 2025
2 checks passed
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.

3 participants