Rama 0.4 añade configuración de proxy del sistema y soporte para PAC

Fuentes: Rama 0.4: System proxy and PAC support

Rama, el framework modular de Rust para redes y proxies creado por Plabayo, publica su versión 0.4 apenas seis semanas después de la 0.3. La novedad principal es el soporte nativo para la configuración de proxy del sistema operativo, una pieza muy demandada por los desarrolladores de aplicaciones de red que hasta ahora debían implementar esa lógica manualmente.

La versión incorpora SystemProxyLayer, que detecta automáticamente los proxies HTTP, HTTPS y SOCKS5 definidos a nivel de sistema, así como las reglas de bypass equivalentes a las variables de entorno NO_PROXY, ALL_PROXY o HTTPS_PROXY. También se suma NoProxyEnvLayer y ProxyEnvLayer para cubrir de forma completa la lectura de variables de entorno relacionadas.

En paralelo, Rama 0.4 estrena soporte para Proxy Auto-Configuration (PAC) mediante el crate rama-pac, respaldado por un nuevo runtime de JavaScript llamado rama-js que se ejecuta dentro de WASM (a través de wasmtime). Esto aporta aislamiento frente a fallos en los scripts PAC sin necesidad de procesos separados del sistema operativo. La CLI incluye subcomandos para generar y evaluar scripts PAC desde un REPL.

Entre las demás incorporaciones destacan el crate rama-ttrpc, una alternativa ligera a gRPC que opera directamente sobre transporte TCP, y rama-grpc-macros, que permite definir servicios gRPC sin escribir archivos .proto, usando codecs propios y opcionalmente Serde. Además, se añade soporte para datos WebSocket dentro de archivos HAR (HTTP Archive), descubierto a raíz de la colaboración con un socio comercial, lo que ha permitido reescribir el exportador HAR para volcar datos en streaming a disco sin acumular el flujo completo en memoria. El comando send de la CLI incorpora el flag --har para generar estos archivos.