NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #3657 most downloaded on PyPI
Python Telnet server and client CLI and Protocol library
Last release 17 days ago
18 Sep 2026
Ships unpredictably
gaps range from 8 days to 2.2 years
Nearly every release is documented
notes for 38 of 41 stable releases
Nothing withdrawn
no release was ever pulled
13 years old
42 releases · first in 2014
bugfix AttributeError, stdin has no attribute, 'isatty' by @jquast in #149
Full Changelog: 5.0.0...5.0.1
has no attribute 'isatty'`` in processes without a console, like pythonw.exe on Windows.
…( writer.ctx.mssp_data , etc.). Deprecated writer properties delegate to ctx ; writer.zmp_data is removed without deprecation.
One column per quarter.
5.0.0
~telnetlib3.stream_writer.TelnetWriter.handle_zmp now receives command, *args instead of one parts list; zmp_data moved to writer.ctx and is now a dict~telnetlib3.stream_writer.TelnetWriter.send_zmp.mssp_data, atcp_data, aardwolf_data,mxp_data, comport_data) moved from :class:~telnetlib3.stream_writer.TelnetWriter to~telnetlib3._session_context.TelnetSessionContext (writer.ctx.mssp_data, etc.).ctx; writer.zmp_data is removed withoutalways_will /always_do / passive_do) used by downstream clients such as telix to accept them. NoteDO (the LPMud family convention, e.g.WILL to IAC DO MXP.~telnetlib3.stream_writer.TelnetWriter.add_will_callback and~telnetlib3.stream_writer.TelnetWriter.remove_will_callback for per-option callbacks~telnetlib3.stream_writer.TelnetWriter.handle_will negotiation. Replaces~telnetlib3.client.TelnetClient for GMCP, ZMP,telnetlib3-fingerprint now accepts all MUD protocol offers (ATCP, AARDWOLF,--loglevel=trace receive dumps show the decompressed telnet stream (MCCP2,IAC SB IAC SE (sub-negotiation with no option byte) should not raise IndexErrorFull Changelog: 4.0.5...5.0.0
yield drain() after telnetlib3-client stdout.write() by @jquast in #145
Full Changelog: 4.0.4...4.0.5
Full Changelog: https://github.com/jquast/telnetlib3/compare/4.0.4...4.0.5
bugfix servers using robot_check=True+encoding=False by @jquast in #144
Full Changelog: 4.0.3...4.0.4
expected bytes, got <class 'str'>``. telnetlib3-server now also accepts --encoding=False CLI argument. latin1 encoding is used the default server shell and robot check.
removed: telnetlib3-fingerprint-server no longer integrates with the (never released) tv-detect package for terminal vulnerability probing.
bugfix: long-running servers leaked memory through :class:~telnetlib3.server.Server _protocols list and _new_client asyncio.Queue. Both are now bounded and regularly pruned.
enhancement: telnetlib3.telnet now overlays std library module space, import telnetlib :ghissue:139.
enhancement: telnetlib3-fingerprint-server and telnetlib3-fingerprint client now also detect "telnet loops" and "wrong direction" errors in opposing IAC parser.
removed: telnetlib3-fingerprint-server no longer integrates with the (never released) tv-detect package for terminal vulnerability probing.
provide legacy 'import telnetlib' compatibility by @jquast in #141
Full Changelog: 4.0.2...4.0.3
enhancement: telnetlib3-fingerprint-server integrates with the optional tv-detect package for terminal vulnerability probing.
NEW_ENVIRON SEND requests that exceed the 256-byte subnegotiation buffer of sometelnetlib3-server argument --tls-auto deadlocked with plain telnet clients.writer.get_extra_info("ssl_object") is available in shell callbacks to detecttelnetlib3-fingerprint-server integrates with the optional tv-detectbugfix TypeError in request_charset() by @jquast in #129
Full Changelog: 3.0.1...4.0.1
terminal clients, popular with Taiwanese BBS culture.
enhancement: telnetlib3-client now works on Windows by using the optional blessed>=1.20 dependency, installed automatically for Windows platforms.
bugfix: telnetlib3-client could begin a shell in wrong ECHO mode, depending on order of options in a "connection burst".
bugfix: ~telnetlib3._session_context.TelnetSessionContext gmcp_data mutable default argument caused all instances to share a single dict, so GMCP data from one connection contaminated subsequent connections.
bugfix: keyboard escape detection raised UnicodeDecodeError on non-UTF-8 terminal input bytes; now uses errors="replace".
removed: telnetlib3.color_filter. ColorFilter, ColorConfig, PALETTES, PetsciiColorFilter, and AtasciiControlFilter have all been moved to the downstre
PetsciiColorFilter, and AtasciiControlFilter have all been moved to the downstream Telix project, recommended for connecting to legacy BBSs systems requiring color correction.
telnetlib3-client CLI args --colormatch, --color-brightness, --color-contrast, --background-color, --ice-colors removed.
bugfix: server and client now correctly complete LINEMODE negotiation when prompted to.
bugfix: server and client now correctly complete LINEMODE negotiation when prompted to. * new: --logfile-mode {append,rewrite} and --typescript-mode CLI flags
and ~telnetlib3.accessories.make_logger filemode argument control whether the log file is appended to (default) or overwritten on each connection.
new: ~telnetlib3.client_shell.LinemodeBuffer used by telnetlib3-client, a client-side line buffer for LINEMODE EDIT mode with local erase-char, erase-line, erase-word editing, forwardmask flushing, and TRAPSIG IAC command generation. The default 'telsh' server was also updated to support linemode.
bugfix: ~telnetlib3.stream_writer.TelnetWriter.request_charset raised TypeError, 128. Offer callbacks (no-arg, returning a list of items to propose) a
128. Offer callbacks (no-arg, returning a list of items to propose) are now separated from send callbacks (which respond to received requests) via new ~telnetlib3.stream_writer.TelnetWriter.set_ext_offer_callback method.
change: Unused client argument gmcp_log removed.
gmcp_log removed.Full Changelog: 3.0.0...3.0.1
change: Unused client argument gmcp_log removed. * new: MCCP2 and MCCP3. Both client and server ends passively support if requested, and request
support by --compression or deny support by --no-compression.
new: ~telnetlib3.client.TelnetClient.on_request_charset and ~telnetlib3.client.TelnetClient.on_request_environ offer callbacks on the client, symmetric with the existing server-side callbacks.
change: connect_minwait default now 0 (was 1.0 seconds in library API).
connect_minwait default now 0 (was 1.0 seconds in library API).force_binary auto-enabled when CHARSET is negotiated (RFC 2066) or LANG/CHARSET received via NEW_ENVIRON (RFC 1572). SyncTERM font detection also enables it unconditionally.--connect-timeout default changed from no limit to 10 seconds.--reverse-video CLI option from 2.4.0 was removed.--colormatch; only vga is available at this time. ice_colors are now True by default.read_some() in synchronous API (TelnetConnection and ServerConnection) blocked until EOF instead of returning available data. Now returns as soon as any data is available.TelnetSessionContext base class and writer.ctx attribute for per-connection session state. Subclass to add application-specific attributes (e.g. MUD client state).--ice-colors (default on) treats SGR 5 (blink) as bright background for proper 16-color BBS/ANSI art display.--typescript FILE records session output to a file, similar to the Unix script(1) command.TelnetProtocolBase mixin extracted from duplicated server and client protocol code._atomic_json_write() and _BytesSafeEncoder helpers in _paths module for fingerprinting subsystem.telnet.exe) compatibility refined — server now sends DO NEW_ENVIRON but excludes USER variable instead of skipping the option entirely, #24.Bugfix wcwidth dependency, #126
Bugfix wcwidth dependency, #126
Full Changelog: 2.6.0...2.6.1
new : TLS support (TELNETS). open_connection() accepts an ssl parameter ( True , or an ssl.SSLContext ). create_server() accepts an ssl parameter ( ss
open_connection() accepts an ssl parameter (True, or an ssl.SSLContext). create_server() accepts an ssl parameter (ssl.SSLContext). New CLI options: --ssl, --ssl-cafile, --ssl-no-verify for telnetlib3-client; --ssl-certfile, --ssl-keyfile and --tls-auto for telnetlib3-server.Ready (secure: TLSv1.3). for TLS connections (the protocol version shown is negotiated dynamically).telnetlib3-client now sets terminal mode to the server's preference via WILL ECHO and WILL SGA negotiation. Use --raw-mode to restore legacy raw mode for servers that don't negotiate.telnetlib3-client declines MUD protocol options (GMCP, MSDP, MSSP, MSP, MXP, ZMP, AARDWOLF, ATCP) by default. Use --always-do or --always-will to opt in.Full Changelog: 2.5.0...2.6.0
change: telnetlib3-client now defaults to raw terminal mode (no line buffering, no local echo), which is correct for most servers. Use --line-mode to
telnetlib3-client now defaults to raw terminal mode (no line buffering, no local echo), which is correct for most servers. Use --line-mode to restore line-buffered local-echo behavior.telnetlib3-server --pty-exec now defaults to raw PTY mode. Use --line-mode to restore cooked PTY mode with echo.connect_minwait default reduced to 0 across BaseClient, open_connection(), and telnetlib3-client. Negotiation continues asynchronously. Use --connect-minwait to restore a delay if needed, or use TelnetWriter.wait_for() in server or client shells to await a specific negotiation state.--encoding support for ATASCII (ATARI ASCII) and PETSCII (Commodore ASCII).CSI Ps1 ; Ps2 SP D). Both telnetlib3-fingerprint and telnetlib3-client detect font switching and auto-switch encoding to the matching codec (e.g. font 36 = ATASCII, 32-35 = PETSCII, 0 = CP437). Explicit --encoding takes precedence.TRACE log level (5, below DEBUG) with hexdump style output for all sent and received bytes. Use --loglevel=trace.robot_check() now uses a narrow character (space) instead of a wide Unicode character, allowing retro terminal emulators to pass.telnetlib3-fingerprint banners.telnetlib3-fingerprint re-encodes prompt responses for retro encodings so servers receive the correct EOL byte.telnetlib3-fingerprint no longer crashes with LookupError when the server negotiates an unknown charset. Banner formatting falls back to latin-1.TelnetClient.send_charset() normalises non-standard encoding names (iso-8859-02 to iso-8859-2, cp-1250 to cp1250, etc.).telnetlib3-fingerprint responds more like a terminal and to more y/n prompts about colors, encoding, etc. to collect more banners for the https://bbs.modem.xyz/ project.telnetlib3-fingerprint banner formatting uses surrogateescape error handler, preserving raw high bytes (e.g. CP437 art) as surrogates instead of replacing them with U+FFFD.Full Changelog: https://github.com/jquast/telnetlib3/compare/2.4.0...2.5.0
change: wcwidth is now a required dependency!
wcwidth is now a required dependency!ValueError; treated as data.TTYPE IS from server.request_forwardmask() only called on server side.--banner-max-bytes option for telnetlib3-fingerprint; default raised from 1024 to 65536.--encoding=petscii and --encoding=ataristtelnetlib3.color_filter module — translates 16-color ANSI SGR codes to 24-bit RGB from hardware palettes (EGA, CGA, VGA, Amiga, xterm). Enabled by default. New client CLI options: --colormatch, --color-brightness, --color-contrast, --background-color, --reverse-video.telnetlib3.mud.zmp_decode, mud.atcp_decode, and mud.aardwolf_decode decode functions for ZMP (option 93), ATCP (option 200), and Aardwolf (option 102) MUD protocols.telnetlib3.stream_writer.TelnetWriter.handle_zmp, handle_atcp, handle_aardwolf, handle_msp, and handle_mxp callbacks for receiving MUD extended protocol subnegotiations, with accumulated data stored in zmp_data, atcp_data, and aardwolf_data attributes.comport_data attribute and new method telnetlib3.stream_writer.TelnetWriter.request_comport_signature.telnetlib3-fingerprint now always probes extended MUD options (MSP, MXP, ZMP, AARDWOLF, ATCP) during server scans and captures ZMP, ATCP, Aardwolf, MXP, and COM-PORT data in session output.telnetlib3-fingerprint smart prompt detection — auto-answers yes/no, color, UTF-8 menu, who, and help prompts.codes to 24-bit RGB from hardware palettes (EGA, CGA, VGA, xterm). Enabled by default. New client CLI options: --colormatch, --color-brightness, --color-contrast, --background-color, --reverse-video.
new: ~telnetlib3.mud.zmp_decode, ~telnetlib3.mud.atcp_decode, and ~telnetlib3.mud.aardwolf_decode decode functions for ZMP (option 93), ATCP (option 200), and Aardwolf (option 102) MUD protocols.
new: ~telnetlib3.stream_writer.TelnetWriter.handle_zmp, ~telnetlib3.stream_writer.TelnetWriter.handle_atcp, ~telnetlib3.stream_writer.TelnetWriter.handle_aardwolf, ~telnetlib3.stream_writer.TelnetWriter.handle_msp, and ~telnetlib3.stream_writer.TelnetWriter.handle_mxp callbacks for receiving MUD extended protocol subnegotiations, with accumulated data stored in zmp_data, atcp_data, and aardwolf_data attributes.
new: COM-PORT-OPTION (2217) subnegotiation parsing with comport_data attribute and ~telnetlib3.stream_writer.TelnetWriter.request_comport_signature.
enhancement: telnetlib3-fingerprint now always probes extended MUD options (MSP, MXP, ZMP, AARDWOLF, ATCP) during server scans and captures ZMP, ATCP, Aardwolf, MXP, and COM-PORT data in session output.
enhancement: telnetlib3-fingerprint smart prompt detectionm auto-answers yes/no, color, UTF-8 menu, who, and help prompts.
enhancement: --banner-max-bytes option for telnetlib3-fingerprint; default raised from 1024 to 65536.
new: ATASCII (Atari 8-bit) codec, --encoding=atascii for connecting to Atari BBS systems. Maps all 256 byte values to Unicode including graphics characters, card suits, and the inverse-video range (0x80--0xFF). ATASCII EOL (0x9B) maps to newline. Aliases: atari8bit, atari_8bit.
enhancement: --encoding=atascii, --encoding=petscii, and --encoding=atarist now auto-enable --force-binary for both client and server, since these encodings use bytes 0x80--0xFF for standard glyphs.
bugfix: rare LINEMODE ACK loop with misbehaving servers that re-send unchanged MODE without ACK.
bugfix: unknown IAC commands no longer raise ValueError; treated as data.
bugfix: client no longer asserts on TTYPE IS from server.
bugfix: ~telnetlib3.stream_writer.TelnetWriter.request_forwardmask only called on server side.
change: wcwidth is now a required dependency.
@shmup made their first contribution in https://github.com/jquast/telnetlib3/pull/116
Full Changelog: https://github.com/jquast/telnetlib3/compare/2.2.0...2.3.0
Full Changelog: https://github.com/jquast/telnetlib3/compare/2.2.0...2.3.0
bugfix: repeat "socket.send() raised exception." exceptions. * bugfix: server incorrectly accepted DO TSPEED and DO SNDLOC
with WILL responses. These are client-only options per 1079 and 779; the server now correctly rejects them.
bugfix: LINEMODE DO FORWARDMASK subnegotiation no longer raises NotImplementedError; the mask is accepted (logged only).
bugfix: echo doubling in --pty-exec without --pty-raw (linemode).
bugfix: missing LICENSE.txt in sdist file.
bugfix: GMCP, MSDP, and MSSP decoding now uses --encoding when set, falling back to latin-1 for non-UTF-8 bytes instead of lossy replacement.
bugfix: NEW_ENVIRON SEND with empty payload now correctly interpreted as "send all" per 1572.
new: telnetlib3.mud module with encode/decode functions for GMCP (option 201), MSDP (option 69), and MSSP (option 70) MUD telnet protocols.
new: ~telnetlib3.stream_writer.TelnetWriter.send_gmcp, ~telnetlib3.stream_writer.TelnetWriter.send_msdp, and ~telnetlib3.stream_writer.TelnetWriter.send_mssp methods for sending MUD protocol data, with corresponding ~telnetlib3.stream_writer.TelnetWriter.handle_gmcp, ~telnetlib3.stream_writer.TelnetWriter.handle_msdp, and ~telnetlib3.stream_writer.TelnetWriter.handle_mssp callbacks.
new: connect_timeout parameter for client and --connect-timeout CLI argument, 30.
new: telnetlib3-fingerprint-server CLI with extended NEW_ENVIRON for fingerprinting of connected clients.
new: telnetlib3-fingerprint CLI for fingerprinting the given remote server, probing telnet option support and capturing banners.
enhancement: reversed WILL/DO for directional options (e.g. WILL NAWS from server, DO TTYPE from client) now gracefully refused with DONT/WONT instead of raising ValueError.
enhancement: NEW_ENVIRON SEND and response logging improved, SEND (all) / env send: (empty) instead of raw byte dumps.
enhancement: telnetlib3-fingerprint now probes MSDP and MSSP options and captures MSSP server status data in session output.
new: --always-will, --always-do, --scan-type, --mssp-wait, --banner-quiet-time, --banner-max-wait options for telnetlib3-fingerprint.
bugfix: workaround for Microsoft Telnet client crash on SB NEW_ENVIRON SEND, #24. Server now defers DO NEW_ENVIRON until TTYPE cycling identifies the
2.2.0
SB NEW_ENVIRON SEND, #24. Server now defers
DO NEW_ENVIRON until TTYPE cycling identifies the client, skipping it
entirely for MS Telnet (ANSI/VT100).--never-send-ga to suppress like old behavior.connect_maxwait
reduced from 4.0s to 1.5s.Server class returned by create_server() with
wait_for_client() method and clients property for tracking
connected clients.TelnetWriter.wait_for() and wait_for_condition()
methods for waiting on telnet option negotiation state.telnetlib3.sync module with blocking (non-asyncio) APIs:
TelnetConnection for clients, BlockingTelnetServer for servers.pty_shell module and demonstrating telnetlib3-server --pty-exec CLI argument
and related --pty-raw server CLI option for raw PTY mode, used by most
programs that handle their own terminal I/O.guard_shells module with --robot-check and --pty-fork-limit
CLI arguments for connection limiting and bot detection.fingerprinting module for telnet client identification and
capability probing.--send-environ client CLI option to control which environment
variables are sent via NEW_ENVIRON. Default no longer includes HOME or
SHELL.SB NEW_ENVIRON SEND, 24. Server now defers DO NEW_ENVIRON until TTYPE cycling identifies the client, skipping it entirely for MS Telnet (ANSI/VT100).
bugfix: handling of LINEMODE FORWARDMASK command bytes.
bugfix: SLC fingerprinting byte handling.
bugfix: send IAC GA (Go-Ahead) after prompts when SGA is not negotiated. Fixes hanging for MUD clients like Mudlet. PTY shell uses a 500ms idle timer. Use --never-send-ga to suppress like old behavior.
performance: with smarter negotiation, default connect_maxwait reduced from 4.0s to 1.5s.
performance: both client and server protocol data_received methods have approximately 50x throughput improvement in bulk data transfers.
new: ~telnetlib3.server.Server class returned by ~telnetlib3.server.create_server with ~telnetlib3.server.Server.wait_for_client method and ~telnetlib3.server.Server.clients property for tracking connected clients.
new: ~telnetlib3.stream_writer.TelnetWriter.wait_for and ~telnetlib3.stream_writer.TelnetWriter.wait_for_condition methods for waiting on telnet option negotiation state.
new: telnetlib3.sync module with blocking (non-asyncio) APIs: ~telnetlib3.sync.TelnetConnection for clients, ~telnetlib3.sync.BlockingTelnetServer for servers.
new: ~telnetlib3.server_pty_shell module demonstrating telnetlib3-server --pty-exec CLI argument and related --pty-raw server CLI option for raw PTY mode, used by most programs that handle their own terminal I/O.
new: ~telnetlib3.guard_shells module with --robot-check and --pty-fork-limit CLI arguments for connection limiting and bot detection.
new: ~telnetlib3.fingerprinting module for telnet client identification and capability probing.
new: --send-environ client CLI option to control which environment variables are sent via NEW_ENVIRON. Default no longer includes HOME or SHELL.
bugfix: object has no attribute '_extra' by #100, #101
bugfix: respond WILL CHARSET with DO CHARSET
Full Changelog: https://github.com/jquast/telnetlib3/compare/2.0.6...2.0.7
bugfix: corrected CHARSET protocol client/server role behavior #59
--force-binary and --encoding to be combined to prevent
long encoding failed after 4.00s delays in telnetlib3-server with
non-compliant clients, #74telnetlib3-client connection delay, session begins as
soon as TTYPE and either NEW_ENVIRON or CHARSET negotiation is completed.'NoneType' object has no attribute 'is_closing' message
on some types of closed connectionstelnetlib3-client performance, capable of
11.2 Mbit/s or more.telnetlib3-client now negotiates terminal resize events.Full Changelog: https://github.com/jquast/telnetlib3/compare/2.0.5...2.0.6
feature: legacy telnetlib.py from Python 3.11 now redistributed, note change to project LICENSE.txt file.
telnetlib.py from Python 3.11 now redistributed,
note change to project LICENSE.txt file.TelnetReader.readuntil_pattern #92 by @agicyTelnetWriter.wait_closed async method in response to #82.TypeError: buf expected bytes, got <class 'str'> on client timeout
in TelnetServer, #87telnet://1984.ws now documented in README.socket.send() raised exception repeating warning, #89.Full Changelog: https://github.com/jquast/telnetlib3/compare/2.0.4...2.0.5
note change to project LICENSE.txt file.
feature: add ~telnetlib3.stream_reader.TelnetReader.readuntil_pattern, 92 by agicy.
feature: add ~telnetlib3.stream_writer.TelnetWriter.wait_closed async method in response to 82.
bugfix: README examples do not work, 81.
bugfix: TypeError: buf expected bytes, got <class 'str'> on client timeout in ~telnetlib3.server.TelnetServer, 87.
bugfix: performance issues with client protocol under heavy load; demonstrating server telnet://1984.ws now documented in README.
bugfix: annoying "socket.send() raised exception" repeating warning, 89.
bugfix: legacy use of get_event_loop, 85.
document: about encoding and force_binary in response to 90.
feature: add tests to source distribution, 37.
test coverage increased by ~20%.
stop using setuptools library to get current software version
change: stop using setuptools library to get current software version.
bugfix: NameError: when debug=True is used with asyncio.run, #75
bugfix: NameError: name 'sleep' is not defined in stream_writer.py
deprecation: TelnetReader.close and TelnetReader.connection_closed emit warning, use at_eof() and feed_eof() instead.
TypeError: expected string or bytes-like object, got 'int'TelnetReader.close and TelnetReader.connection_closed emit
warning, use at_eof() and feed_eof() instead.loop argument are is no longer accepted by TelnetReader.63 by
@gtaylor!asyncio.StreamReader and asyncio.StreamWriter, this fixes some TypeError
in signatures and runtimesocket.send().
bugfix: in accessories.repr_mapping() about using shlex.quote on non-str, TypeError: expected string or bytes-like object, got 'int'.
bugfix: about fn_encoding using repr on ~telnetlib3.stream_reader.TelnetReaderUnicode.
bugfix: TelnetReader.is_closing() raises AttributeError.
deprecation: ~telnetlib3.stream_reader.TelnetReader.close and ~telnetlib3.stream_reader.TelnetReader.connection_closed emit warning; use ~telnetlib3.stream_reader.TelnetReader.at_eof and ~telnetlib3.stream_reader.TelnetReader.feed_eof instead.
deprecation: the loop argument is no longer accepted by ~telnetlib3.stream_reader.TelnetReader.
enhancement: add Generic MUD Communication Protocol support, 63 by gtaylor.
change: ~telnetlib3.stream_reader.TelnetReader and ~telnetlib3.stream_writer.TelnetWriter no longer derive from asyncio.StreamReader and asyncio.StreamWriter; this fixes some TypeError in signatures and runtime.
std. python telnetlib is no longer imported, its constants are extracted directly to avoid DeprecationWarning
loop, event_loop, and log arguments are no longer accepted to
any class initializers.TelnetServer.waiter_encoding, now receives
only a boolean, rather than an instance of TelnetServer (self)._waiter_connected and
_waiter_closed arguments to Client or Shell class initializers, please do
not use them. A replacement "wait_for_negotiation" awaitable will be provided
in a future release.All code and examples have been updated to the new-style PEP-492 syntax.
change: the loop, event_loop, and log arguments are no longer accepted by any class initializers.
note: this release has a known memory leak when using the _waiter_connected and _waiter_closed arguments to Client or Shell class initializers; please do not use them. A replacement wait_for_negotiation awaitable is planned for a future release.
enhancement: add COM-PORT-OPTION subnegotiation support, 57 by albireox.
bugfix a NoneType error on EOF/Timeout, introduced in previous version 1.0.3, #51 by @zofy.
version 1.0.3, 51 by zofy.
bugfix circular reference between transport and protocol, #43 by @fried
fried.
Telnet client negotiates speed, defaults to 38400. Thanks @hughpyle #35
Telnet client negotiates speed, defaults to 38400. Thanks @hughpyle #35
Fix syntax errors in python 3.7 due to async being a reserved word
Python 3.7 compatibility (#33)
AndrewNelis.
After a year or more of refactoring, we release this new 1.0 API for the telnet protocol. This release prefers the shell(reader, writer) callback rath
After a year or more of refactoring, we release this new 1.0 API for the telnet protocol. This release prefers the shell(reader, writer) callback rather than the twisted-style subclassing of data_received in the previous version.
override of protocol methods, we provide a "shell" callback interface, receiving argument pairs (reader, writer).
bugfix: linemode MODE is now acknowledged.
bugfix: linemode MODE is now acknowledged. * bugfix: default stream handler sends 80 x 24 in cols x rows, not 24 x 80. * bugfix: waiter_closed future on client defaulted to wrong type. * bugfix: telnet shell (TelSh) no longer paints over final exception line.
Nothing published for this version
bugfix: cannot connect to IPv6 address as client.
bugfix: cannot bind to IPv6 address, closes issue #5
minor bugfix that prevented installation for pip
minor bugfix that prevented installation for pip
Nothing published for this version
Nothing published for this version
Nothing published for this version
enhancement: various example programs were included in this release.
enhancement: various example programs were included in this release.
* Initial release.
Initial release.
Your coding agent can read these notes before it upgrades. Set up the MCP server →