mirror of
https://github.com/swift-server/swift-openapi-async-http-client.git
synced 2026-05-03 07:42:29 +00:00
1.0.0-alpha.1
Handle large payloads on 32bit platforms gracefully
### Motivation
If there's a request payload with a number of bytes that can't fit into 32 bits, we'd crash.
### Modifications
Use a graceful initializer and use `.unknown` (so no `content-length` will be sent) if the size exceeds the max of a 32bit int.
### Result
No crash for large payloads on 32bit platforms.
### Test Plan
Tests pass.
Reviewed by: dnadoba
Builds:
✔︎ pull request validation (5.10) - Build finished.
✔︎ pull request validation (5.9) - Build finished.
✔︎ pull request validation (nightly) - Build finished.
✔︎ pull request validation (soundness) - Build finished.
https://github.com/swift-server/swift-openapi-async-http-client/pull/29
AsyncHTTPClient Transport for Swift OpenAPI Generator
A client transport that uses the HTTPClient type from the AsyncHTTPClient library to perform HTTP operations.
Use the transport with client code generated by Swift OpenAPI Generator.
Supported platforms and minimum versions
| macOS | Linux | iOS | tvOS | watchOS |
|---|---|---|---|---|
| ✅ 10.15+ | ✅ | ✅ 13+ | ✅ 13+ | ✅ 6+ |
Usage
Add the package dependency in your Package.swift:
.package(
url: "https://github.com/swift-server/swift-openapi-async-http-client",
exact: "1.0.0-alpha.1"
),
Note that this repository does not have a 1.0 tag yet, so the API is not stable.
Next, in your target, add OpenAPIAsyncHTTPClient to your dependencies:
.target(name: "MyTarget", dependencies: [
.product(name: "OpenAPIAsyncHTTPClient", package: "swift-openapi-async-http-client"),
],
Then, to get started, check out AsyncHTTPClientTransport.
Reporting issues
Please report any issues related to this library in the swift-openapi-generator repository.
Documentation
To learn more, check out the full documentation.
Description
Languages
Swift
100%