HTTP/1.1 library for Flyology tasks
HTTP client and server APIs for Flyology.
The client binds requests to one origin and a bounded transport pool. The server keeps each connection and response exchange under one owner. Calls remain synchronous in native and lightweight tasks.
Response : Client.Response :=
Client.Get
(HTTP, "/status",
Timeout => 2.0);
Body := Client.Read_All
(Response, Maximum => 64 * 1_024);
State.Routes.Get
("/status",
Status'Access,
Name => "status");
Server_Instance.Serve
(Server, Listener, State);
Public interfaces
Client and server share framing policy, not lifecycle state.
Both directions use Flyology I/O and preserve ordinary synchronous call semantics. Their connection and resource ownership remain separate.
Origin-bound request lifecycle
Configure a bounded pool, validate request metadata, stream an optional body, then consume or abandon the leased response deliberately.
Client contracts and examplesConnection-owned exchange lifecycle
Parse and frame responses on the connection owner, with optional routing, middleware, streaming, SSE, WebSockets, and detached native offload.
Server contracts and examplesLibrary boundary
HTTP is built on Flyology.
The library uses task-aware sockets, TLS, files, cancellation, buffers, channels, and structured task scopes from Flyology Runtime. It does not patch the Ada runtime itself.
Inspect the runtime architecture- 01
Protocol framing
HTTP/1.1 request and response state remains explicit, including chunking, trailers, upgrades, and close behavior.
- 02
Application policy
Routing, body policy, middleware, admission, and native offload compose above the protocol connection.
- 03
Transport waits
Flyology suspends a lightweight task without blocking its event-loop pthread and preserves the native-task path.
Current scope
Implemented boundaries are part of the interface.
Flyology HTTP is experimental. Validate the exact compiler, host, TLS provider, workload, and operating limits for your application.
- Available
- HTTP/1.1 client and server, compatible HTTP/1.0 responses, streaming bodies, routing, middleware, SSE, WebSockets, and provider-neutral TLS.
- Not available
- HTTP/2, proxying, content decoding, challenge-driven client authentication, or a production-qualification claim.
- Evidence
- Deterministic protocol tests, native/lightweight lane parity, parser mutation campaigns, and published Autobahn WebSocket reports.