
Security News
Browserslist-rs Gets Major Refactor, Cutting Binary Size by Over 1MB
Browserslist-rs now uses static data to reduce binary size by over 1MB, improving memory use and performance for Rust-based frontend tools.
A wrapper around Ruby Sockets providing timeouts for connect, write, and read
operations using Socket#*_nonblock
methods and IO.select
instead of
Timeout.timeout
.
gem install tcp_timeout
Pass one or more of :connect_timeout
, :write_timeout
, and :read_timeout
as options to TCPTimeout::TCPSocket.new. If a timeout is omitted or nil, that
operation will behave as a normal Socket would. On timeout, a
TCPTimeout::SocketTimeout
(subclass of SocketError
) will be raised.
When calling #read
with a byte length it is possible for it to read some data
before timing out. If you need to avoid losing this data you can pass a buffer
string which will receive the data even after a timeout.
Other options:
:family
- set the address family for the connection, e.g. :INET
or :INET6
:local_host
and :local_port
- the host and port to bind toTCPTimeout::TCPSocket supports only a subset of IO methods, including:
close closed? read read_nonblock readbyte readpartial write write_nonblock
Example:
begin
sock = TCPTimeout::TCPSocket.new(host, port, connect_timeout: 10, write_timeout: 9)
sock.write('data')
sock.close
rescue TCPTimeout::SocketTimeout
puts "Operation timed out!"
end
FAQs
Unknown package
We found that tcp_timeout demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Browserslist-rs now uses static data to reduce binary size by over 1MB, improving memory use and performance for Rust-based frontend tools.
Research
Security News
Eight new malicious Firefox extensions impersonate games, steal OAuth tokens, hijack sessions, and exploit browser permissions to spy on users.
Security News
The official Go SDK for the Model Context Protocol is in development, with a stable, production-ready release expected by August 2025.