smithy-lang / smithy-python

Smithy code generators and core modules for Python (in development)
Apache License 2.0
47 stars 10 forks source link

Import AWS protocol framing and event stream support #298

Closed JordonPhillips closed 2 weeks ago

JordonPhillips commented 2 weeks ago

This brings over the protocol framing and event stream support that is currently being used in the transcribe streaming sdk, with some changes from botocore.

Minor refactoring has been done to format, add type hints, and to upgrade to some new language features. Some issues reported by the typing have been addressed, mostly accounting for cases where a value could be None but wasn't handled as such.

More refactoring will be done in future PRs to make all this implement a generic interface. Effort will be made to keep this module free of dependencies, so that it can at least be used by the transcribe sdk, if not botocore.

I had started getting into the weeds of those bigger changes, but I think it's best to see how those changes affect what's already been there.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.