std::net::connect is blocking plain TCPOpen and answer this issue on GitHub.
decision · opened 2026-10-18 · updated 2026-10-18 · 0 comments
A Nikaia program cannot fetch a URL. std::net offers bind/accept and a blocking connect(address) over plain TCP (crates/nikaia-std/src/net.rs); std::http1 only parses request heads for a server (examples/http). There is no TLS and no client.
Writing scripts/site-issues.py (reads the GitHub API) as a Nikaia tool, as CLAUDE.md asks of new helper tools (“Helper tools are written in Nikaia”). The page-building part ran; the download of https://api.github.com/... and of the site-issues bundle could not be written. A prototype only works if the JSON is fetched outside (gh api, curl).
Does the language offer an HTTP(S) client in std? Most languages count it as basic (Python urllib, Go net/http, Rust has none in std). Decide from what the language is for, not from this one script. If yes: TLS inside std or through a foreign library, blocking or async, redirects, timeouts, headers.
std::http client: get(url; headers) returning status, headers, body.std::net listener.Part of the list: site-issues in Nikaia (see the tracking issue).