{"schema_version":1,"metadata":{"branch":"current","release":"7.9","architecture":"amd64","generated_at":"2026-09-09T04:04:41.004595+00:00","source_url":"https://cdn.openbsd.org/pub/OpenBSD/snapshots/packages/amd64/sqlports-7.55.tgz","source_sha256":"fcdbba1b9df747882aa9bab4af20ebec8dac10655069c90f1cd4145c06e1235e","package_count":12031,"source_kind":"sqlports"},"package":{"name":"ruby34-websocket-driver-0.7.6","path":"www/ruby-websocket-driver,ruby34","url":"/packages/current/www/ruby-websocket-driver,ruby34/","comment":"implementation of the WebSocket protocol for ruby","homepage":"https://github.com/faye/websocket-driver-ruby","maintainer":"The OpenBSD ports mailing-list <ports@openbsd.org>","description":"This module provides a complete implementation of the WebSocket\nprotocols that can be hooked up to any TCP library. It aims to simplify\nthings by decoupling the protocol details from the I/O layer, such that\nusers only need to implement code to stream data in and out of it\nwithout needing to know anything about how the protocol actually works.\nThink of it as a complete WebSocket system with pluggable I/O.\n\nDue to this design, you get a lot of things for free. In particular, if\nyou hook this module up to some I/O object, it will do all of this for\nyou:\n\n* Select the correct server-side driver to talk to the client\n* Generate and send both server- and client-side handshakes\n* Recognize when the handshake phase completes and the WS protocol\n  begins\n* Negotiate subprotocol selection based on Sec-WebSocket-Protocol\n* Negotiate and use extensions via the websocket-extensions module\n* Buffer sent messages until the handshake process is finished\n* Deal with proxies that defer delivery of the draft-76 handshake body\n* Notify you when the socket is open and closed and when messages arrive\n* Recombine fragmented messages\n* Dispatch text, binary, ping and close frames\n* Manage the socket-closing handshake process\n* Automatically reply to ping frames with a matching pong\n* Apply masking to messages sent by the client\n","package_architecture":"amd64","stem":"ruby34-websocket-driver","readme":null,"dependencies":[{"path":"lang/ruby/3.4","type":"library","package_spec":"","url":"/packages/current/lang/ruby/3.4/"},{"path":"www/ruby-websocket-extensions,ruby34","type":"runtime","package_spec":"STEM->=0.1.0","url":"/packages/current/www/ruby-websocket-extensions,ruby34/"},{"path":"lang/ruby/3.4","type":"runtime","package_spec":"","url":"/packages/current/lang/ruby/3.4/"},{"path":"www/ruby-websocket-extensions,ruby34","type":"build","package_spec":"STEM->=0.1.0","url":"/packages/current/www/ruby-websocket-extensions,ruby34/"},{"path":"lang/ruby/3.4","type":"build","package_spec":"","url":"/packages/current/lang/ruby/3.4/"}],"reverse_dependencies":{"count":0,"url":null},"categories":["www","lang/ruby"],"flavors":["ruby33","ruby34","ruby40"],"only_for_architectures":["aarch64","amd64","arm","i386","mips64","mips64el","powerpc","powerpc64","riscv64","sparc64","alpha","hppa"],"not_for_architectures":[]}}
