telnetlib3 4.0.4__tar.gz → 4.0.5__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/PKG-INFO +1 -1
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/history.rst +3 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/pyproject.toml +1 -1
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/accessories.py +1 -1
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/client_shell.py +2 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_client_shell.py +3 -2
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/.gitignore +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/CONTRIBUTING.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/LICENSE.txt +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/README.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/Makefile +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/accessories.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/client.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/client_base.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/client_shell.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/client_shell_win32.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/fingerprinting.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/guard_shells.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/mud.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/server.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/server_base.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/server_pty_shell.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/server_shell.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/session_context.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/slc.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/stream_reader.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/stream_writer.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/sync.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/telnetlib.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/telopt.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/conf.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/contributing.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/guidebook.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/index.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/intro.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/make.bat +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/rfcs.rst +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/sphinxext/github.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/requirements-analysis.txt +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/requirements-docs.txt +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/requirements-tests.txt +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/requirements.txt +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/.gitignore +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/__init__.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/_base.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/_paths.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/_session_context.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/_types.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/client.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/client_base.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/client_shell_win32.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/encodings/__init__.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/encodings/atarist.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/encodings/atascii.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/encodings/big5bbs.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/encodings/petscii.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/fingerprinting.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/fingerprinting_display.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/guard_shells.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/mud.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/py.typed +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/relay_server.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/server.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/server_base.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/server_fingerprinting.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/server_pty_shell.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/server_shell.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/slc.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/stream_reader.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/stream_writer.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/sync.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/telnetlib.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/telopt.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/accessories.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/conftest.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/pty_helper.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_accessories.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_accessories_extra.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_atascii_codec.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_benchmarks.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_big5bbs_codec.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_charset.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_client_shell_win32.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_client_unit.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_core.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_encoding.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_environ.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_fingerprinting.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_guard_integration.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_linemode.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_mccp.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_mud.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_mud_negotiation.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_naws.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_petscii_codec.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_pty_shell.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_reader.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_relay_server.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_server.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_server_api.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_server_cli.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_server_fingerprinting.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_server_mud.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_server_shell_unit.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_shell.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_slc.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_status_logger.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_stream_reader_extra.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_stream_writer_full.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_sync.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_telnetlib.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_telnetlib_import.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_timeout.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_tls.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_tspeed.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_ttype.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_uvloop_integration.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_writer.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_xdisploc.py +0 -0
- {telnetlib3-4.0.4 → telnetlib3-4.0.5}/tox.ini +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: telnetlib3
|
|
3
|
-
Version: 4.0.
|
|
3
|
+
Version: 4.0.5
|
|
4
4
|
Summary: Python Telnet server and client CLI and Protocol library
|
|
5
5
|
Project-URL: Homepage, https://github.com/jquast/telnetlib3
|
|
6
6
|
Project-URL: Documentation, https://telnetlib3.readthedocs.io
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
History
|
|
2
2
|
=======
|
|
3
|
+
4.0.5
|
|
4
|
+
* enhancement: ``telnetlib3-client`` client shell now drains stdout.
|
|
5
|
+
|
|
3
6
|
4.0.4
|
|
4
7
|
* bugfix: servers using ``robot_check=True`` with ``encoding=False`` raised ``TypeError: buf
|
|
5
8
|
expected bytes, got <class 'str'>``. ``telnetlib3-server`` now also accepts ``--encoding=False``
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "telnetlib3"
|
|
7
|
-
version = "4.0.
|
|
7
|
+
version = "4.0.5" # Keep in sync with telnetlib3/accessories.py::get_version !
|
|
8
8
|
description = " Python Telnet server and client CLI and Protocol library"
|
|
9
9
|
readme = "README.rst"
|
|
10
10
|
license = "ISC"
|
|
@@ -42,7 +42,7 @@ PATIENCE_MESSAGES = [
|
|
|
42
42
|
|
|
43
43
|
def get_version() -> str:
|
|
44
44
|
"""Return the current version of telnetlib3."""
|
|
45
|
-
return "4.0.
|
|
45
|
+
return "4.0.5" # keep in sync with pyproject.toml !
|
|
46
46
|
|
|
47
47
|
|
|
48
48
|
def encoding_from_lang(lang: str) -> Optional[str]:
|
|
@@ -579,6 +579,8 @@ async def _raw_event_loop(
|
|
|
579
579
|
if raw_mode is None and want_repl():
|
|
580
580
|
state.reactivate_repl = True
|
|
581
581
|
stdout.write(out.encode())
|
|
582
|
+
if hasattr(stdout, 'drain'):
|
|
583
|
+
await stdout.drain()
|
|
582
584
|
_ts_file = telnet_writer.ctx.typescript_file
|
|
583
585
|
if _ts_file is not None:
|
|
584
586
|
_ts_file.write(out)
|
|
@@ -760,8 +760,7 @@ async def test_raw_event_loop_reactivates_repl() -> None:
|
|
|
760
760
|
term = _make_term(writer)
|
|
761
761
|
term.check_auto_mode = lambda switched_to_raw, last_will_echo: None
|
|
762
762
|
|
|
763
|
-
stdout = mock.Mock()
|
|
764
|
-
stdout.write = mock.Mock()
|
|
763
|
+
stdout = mock.Mock(spec=["write"])
|
|
765
764
|
|
|
766
765
|
close_calls: list[str] = []
|
|
767
766
|
|
|
@@ -823,6 +822,7 @@ async def test_raw_event_loop_typescript_recording() -> None:
|
|
|
823
822
|
|
|
824
823
|
stdout = mock.Mock()
|
|
825
824
|
stdout.write = mock.Mock()
|
|
825
|
+
stdout.drain = mock.AsyncMock()
|
|
826
826
|
|
|
827
827
|
state = _RawLoopState(
|
|
828
828
|
switched_to_raw=True, last_will_echo=False, local_echo=False, linesep="\r\n"
|
|
@@ -839,6 +839,7 @@ async def test_raw_event_loop_typescript_recording() -> None:
|
|
|
839
839
|
want_repl=lambda: False,
|
|
840
840
|
)
|
|
841
841
|
assert "hello world" in ts_buf.getvalue()
|
|
842
|
+
stdout.drain.assert_called_once()
|
|
842
843
|
|
|
843
844
|
|
|
844
845
|
@pytest.mark.asyncio
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|