Skip to content

Conversation

@pull
Copy link

@pull pull bot commented Jan 24, 2026

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

Adds a blocking/synchronous interface for telnetlib3 and wait_for methods for telnet option negotiation.

- **Deletes** the "_waiter_closed" future, this thing was a mistake and finally not necessary by new Server()
  - unfortunately _waiter_connected still exists and is used ..  maybe that goes next
- **New** Server.wait_for_clients() and other methods replaces need for _waiter_connected, closed, etc.
- **New** writer.wait_for() to wait for specific option negotiation states (remote/local/pending), wait_for_condition() for custom predicates
- **New** telnetlib3.sync module with TelnetConnection, BlockingTelnetServer, and ServerConnection classes for non-asyncio usage
   - Miniboa-compatible properties on ServerConnection for easier migration for "more advanced server of the same interface"
   - New docs/guidebook.rst with usage patterns and examples
   - Example scripts in bin/ (blocking client/server, wait_for demos)
- Removed pylint.extensions.docparams (redundant with type annotations)
This also includes a performance-enhanced data_received on server end matching similar technique in client end, reducing loops/if statements and improving performance 50x or more
- Add new StatusLogger to server, count and report rx/tx bytes
- update README.rst, main page hyperlinks to RTD often and overviews everything
- rename pty module for better module namespace 
- reorganization of ``__all__`` for orderly ``help(telnetlib3)`` reading (like 4k lines! enjoy!!)
@pull pull bot locked and limited conversation to collaborators Jan 24, 2026
@pull pull bot added the ⤵️ pull label Jan 24, 2026
@pull pull bot merged commit ed8cf19 into threatcode:master Jan 24, 2026
22 of 25 checks passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant