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.
Files changed (122) hide show
  1. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/PKG-INFO +1 -1
  2. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/history.rst +3 -0
  3. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/pyproject.toml +1 -1
  4. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/accessories.py +1 -1
  5. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/client_shell.py +2 -0
  6. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_client_shell.py +3 -2
  7. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/.gitignore +0 -0
  8. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/CONTRIBUTING.rst +0 -0
  9. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/LICENSE.txt +0 -0
  10. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/README.rst +0 -0
  11. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/Makefile +0 -0
  12. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/accessories.rst +0 -0
  13. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/client.rst +0 -0
  14. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/client_base.rst +0 -0
  15. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/client_shell.rst +0 -0
  16. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/client_shell_win32.rst +0 -0
  17. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/fingerprinting.rst +0 -0
  18. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/guard_shells.rst +0 -0
  19. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/mud.rst +0 -0
  20. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/server.rst +0 -0
  21. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/server_base.rst +0 -0
  22. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/server_pty_shell.rst +0 -0
  23. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/server_shell.rst +0 -0
  24. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/session_context.rst +0 -0
  25. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/slc.rst +0 -0
  26. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/stream_reader.rst +0 -0
  27. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/stream_writer.rst +0 -0
  28. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/sync.rst +0 -0
  29. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/telnetlib.rst +0 -0
  30. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api/telopt.rst +0 -0
  31. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/api.rst +0 -0
  32. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/conf.py +0 -0
  33. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/contributing.rst +0 -0
  34. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/guidebook.rst +0 -0
  35. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/index.rst +0 -0
  36. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/intro.rst +0 -0
  37. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/make.bat +0 -0
  38. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/rfcs.rst +0 -0
  39. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/docs/sphinxext/github.py +0 -0
  40. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/requirements-analysis.txt +0 -0
  41. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/requirements-docs.txt +0 -0
  42. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/requirements-tests.txt +0 -0
  43. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/requirements.txt +0 -0
  44. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib.py +0 -0
  45. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/.gitignore +0 -0
  46. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/__init__.py +0 -0
  47. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/_base.py +0 -0
  48. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/_paths.py +0 -0
  49. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/_session_context.py +0 -0
  50. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/_types.py +0 -0
  51. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/client.py +0 -0
  52. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/client_base.py +0 -0
  53. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/client_shell_win32.py +0 -0
  54. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/encodings/__init__.py +0 -0
  55. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/encodings/atarist.py +0 -0
  56. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/encodings/atascii.py +0 -0
  57. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/encodings/big5bbs.py +0 -0
  58. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/encodings/petscii.py +0 -0
  59. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/fingerprinting.py +0 -0
  60. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/fingerprinting_display.py +0 -0
  61. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/guard_shells.py +0 -0
  62. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/mud.py +0 -0
  63. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/py.typed +0 -0
  64. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/relay_server.py +0 -0
  65. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/server.py +0 -0
  66. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/server_base.py +0 -0
  67. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/server_fingerprinting.py +0 -0
  68. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/server_pty_shell.py +0 -0
  69. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/server_shell.py +0 -0
  70. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/slc.py +0 -0
  71. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/stream_reader.py +0 -0
  72. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/stream_writer.py +0 -0
  73. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/sync.py +0 -0
  74. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/telnetlib.py +0 -0
  75. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/telopt.py +0 -0
  76. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/accessories.py +0 -0
  77. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/conftest.py +0 -0
  78. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/pty_helper.py +0 -0
  79. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_accessories.py +0 -0
  80. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_accessories_extra.py +0 -0
  81. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_atascii_codec.py +0 -0
  82. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_benchmarks.py +0 -0
  83. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_big5bbs_codec.py +0 -0
  84. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_charset.py +0 -0
  85. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_client_shell_win32.py +0 -0
  86. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_client_unit.py +0 -0
  87. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_core.py +0 -0
  88. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_encoding.py +0 -0
  89. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_environ.py +0 -0
  90. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_fingerprinting.py +0 -0
  91. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_guard_integration.py +0 -0
  92. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_linemode.py +0 -0
  93. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_mccp.py +0 -0
  94. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_mud.py +0 -0
  95. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_mud_negotiation.py +0 -0
  96. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_naws.py +0 -0
  97. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_petscii_codec.py +0 -0
  98. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_pty_shell.py +0 -0
  99. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_reader.py +0 -0
  100. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_relay_server.py +0 -0
  101. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_server.py +0 -0
  102. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_server_api.py +0 -0
  103. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_server_cli.py +0 -0
  104. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_server_fingerprinting.py +0 -0
  105. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_server_mud.py +0 -0
  106. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_server_shell_unit.py +0 -0
  107. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_shell.py +0 -0
  108. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_slc.py +0 -0
  109. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_status_logger.py +0 -0
  110. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_stream_reader_extra.py +0 -0
  111. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_stream_writer_full.py +0 -0
  112. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_sync.py +0 -0
  113. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_telnetlib.py +0 -0
  114. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_telnetlib_import.py +0 -0
  115. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_timeout.py +0 -0
  116. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_tls.py +0 -0
  117. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_tspeed.py +0 -0
  118. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_ttype.py +0 -0
  119. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_uvloop_integration.py +0 -0
  120. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_writer.py +0 -0
  121. {telnetlib3-4.0.4 → telnetlib3-4.0.5}/telnetlib3/tests/test_xdisploc.py +0 -0
  122. {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.4
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.4" # Keep in sync with telnetlib3/accessories.py::get_version !
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.4" # keep in sync with pyproject.toml !
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