Skip to content

feat(core): start support for streams#326

Open
Guikingone wants to merge 20 commits into
illegalstudio:mainfrom
Guikingone:feat/streams-pr
Open

feat(core): start support for streams#326
Guikingone wants to merge 20 commits into
illegalstudio:mainfrom
Guikingone:feat/streams-pr

Conversation

@Guikingone
Copy link
Copy Markdown
Contributor

No description provided.

@Guikingone Guikingone marked this pull request as ready for review June 2, 2026 12:52
PhpType stream resource, fopen/fread/fwrite/fclose/fgets/fseek/ftell/feof/fflush/fstat, directory iteration, popen/pclose, and the shared frontend wiring (catalog, signatures, type inference, optimizer effects, parser/AST, name resolution) that the rest of the streams subsystem builds on.
stream_socket_server/client/accept/sendto/recvfrom/get_name/pair/shutdown, fsockopen/pfsockopen, IPv4+IPv6 address parsing, DNS resolution (gethostby*), and the protoent/servent lookups.
elephc-tls rustls staticlib (connect/read/write/close, insecure + client-cert configs), the https:// wrapper honoring ssl.* context options, ftps://, and stream_socket_enable_crypto promoting a live TCP fd to TLS. Wires the CI and release workflows to build the elephc-tls staticlib (cargo build -p elephc-tls) before the test step, since the codegen runner links compiled TLS programs against libelephc_tls.a (cargo test alone only produces the rlib dev-dependency, not the staticlib).
data:// (RFC 2397), http:// (GET, redirects), ftp://, the compress.zlib:// / compress.bzip2:// wrappers, the gz*/inet helpers, and crc32().
stream_filter_append/prepend/remove with the built-in transforms and $params, user filters (stream_filter_register), stream_bucket_*, stream_context_*, the stream notification callback, and the userspace stream_wrapper_register vtable (open/read/write/close/seek/eof/flush/lock/truncate/cast + path and dir ops).
phar:// read (compile-time literal + runtime non-literal, uncompressed/gzip/bzip2) and signed single-entry write, plus the streams documentation, examples, ROADMAP remaining-work checklist, Docker test image deps, and the elephc-tls workspace wiring.
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.

2 participants