routed_node 0.2.0
routed_node: ^0.2.0 copied to clipboard
Node.js host transport for Routed — IncomingMessage/ServerResponse adapters on RequestAdapter/ResponseAdapter/ServerTransport.
0.2.0 #
-
Enumerate native Fetch headers at the portable request boundary and retain the actual bound Node listener port, including ephemeral-port listeners.
-
Verify native Node and Cloudflare Fetch request handling against the same public Routed auth runtime conformance contract used by
routed_io. -
Adopted null-aware collection elements in the Cloudflare Fetch binding serialization paths so the host adapter remains analyzer-clean.
-
Fix D1 metadata decoding for Cloudflare's snake_case
rows_readandrows_writtenfields, and alignserved_by_primarywith Cloudflare's boolean contract while exposing theserved_by_cololocation. -
Added host-neutral Cloudflare bindings for Request
cfmetadata, the Cache API, R2 buckets, Queue producers, and Worker service bindings. -
Added host-neutral Cloudflare bindings for Container instances and Container-backed Durable Object controls, Workflow instances, and Secrets Store reads. Worker bindings are also available through
env.worker(...), including HTTP Fetch and RPC calls. -
Added Node runtime coverage for Cloudflare cache, R2 streaming objects, queue metrics, service-binding responses, Container controls, Workflow lifecycle operations, and Secrets Store reads.
-
Expanded host integrations for Bun, Deno, Vercel, and Netlify while keeping the portable request/response boundary consistent across runtimes.
-
Added listener WebSocket bridging and runtime capability reporting.
-
Fetch-host failures now return a generic public error while retaining the diagnostic details for internal logging.
-
Added the Cloudflare-specific
cloudflare.dartbinding surface for Worker environments, KV, D1, Durable Objects, alarms, and SQLite SQL storage. -
Added an end-to-end Cloudflare usage example covering D1, KV, and SQLite-backed Durable Objects.
-
Added Routed-owned Cloudflare request and response wrappers so application code does not need
package:webordart:js_interop. -
Added text and JSON helpers for buffered Durable Object responses.
-
Added host-neutral Durable Object
WebSocketPair, hibernation socket methods, and message/close/error callback forwarding. -
Add
cloudflareTextBindingso Worker text and secret bindings can be read through the public host-neutral API withoutpackage:webor JS interop.
0.1.0 #
- Initial Node.js host transport for Routed.
- Preferred value edge:
portableRequestFromNode,writePortableResponseToNode,dispatchNodeExchange→Engine.handlePortable. - Stream-sink path:
NodeRequestAdapter/NodeResponseAdapter/NodeHttpConnectionforEngine.handleConnection. NodeServerTransport+serveNodebind via Nodehttp.createServer(JS interop; stubbed on the Dart VM).- Sample API project under
example/api(JSON items API, VM smoke,serveNodeentry +index.cjsNode bootstrap).